OS X下使用SFTP连接OpenShift

November 17, 2013

Tags:openshiftcloudsftp

虽然OpenShift支持Git,但也可使用SFTP连接并实现deploy。官方提供指导文档,与视频参考

需要的工具:

  • NetBeans IDE (需要Java支持) 首先在OpenShift的帐户内创建一个应用,我们以php (5.3)为例。而这时候你至少需要NetBeans的php支持插件。

more

creat-php-in-openshift

当你创建完毕的时候会得到页面地址:形如php-away.rhcloud.com   还有ssh地址,形如 : ssh://52889b625004465062000128@php-away.rhcloud.com/~/git/php.git/  ,后面会用到。

接下来打开你的终端,在命令行中输入ssh-keygen,一路回车就可以了。你会得到一个ssh公匙,它被保存在 /系统盘符/Users/away/.ssh/ 文件夹下,away文件夹就是你自己的用户文件夹,因用户不同而命名不同。而.ssh文件夹是隐藏不可见的,你可以在这里找到显示隐藏文件的方法。

该文件夹下至少有有id_rsa和id_rsa.pub 两个文件。用文字编辑器或其它打开id_rsa.pub文件,拷贝里面的内容,将它们粘贴在你的OpenShift帐户中,在setting内设定,并保存。

接下来开始使用NetBeans连接你的openshift。选择新建项目,出现php类别中的PHP Application from Remote Server。

PHP-Application-from-Remote-Server

Project Name : 填写自己项目的名称,比如php-away;

Source Folder:填写本地项目的位置,比如/Users/away/Desktop/phpaway (可选择路径);

php Version: 选择5.3 ,因为OpenShift支持的仅是5.3版本;

点击下一步;

Project URL:填写上述提到的形如 http://php-away.rhcloud.com  地址;

Remote Connection 中打开Manage,Add一个自定义名字,如openshift的连接,选择连接方式为SFTP。

  • Host Name : 就是php-away.rhcloud.com ,端口22
  • User Name :是上述提及的那SSH地址的@前半截部分,我得到的就是52889b625004465062000128;
  • Password : 留白
  • Private Key File : 形如 /Users/away/.ssh/id_rsa 的地址;
  • Known Host File :也是在.ssh 文件夹下的一个文件,可选填;
  • Initial Directory 的写入方法: > 上述得到的SSH地址,以@为界,前面数字串为用户名,后方截止至*****. rhcloud.com 为服务器名; > > > 打开终端输入 ssh 52889b625004465062000128@php-away.rhcloud.com ; 会得到如下图所示:

ssh-in-terminal

输入pwd,即可得到Initial Directory ,形如/var/lib/openshift/528826a7e0b8cd449d000099
然后回到NetBeans中,需要填写Upload Directory 地址,

  • 到终端中继续输入ls,查看当前目录文件,cd命令为进入目录,如下图所示:

ls-cd-in-terminal

  • 上面显示了 我进入了/app-root/repo/php 目录,再使用pwd命令查看了路径;(上图显示我已经上传了部分的wordpress文件了 ) 因此得到Upload Directory 地址为/app-root/repo/php

下一步,等待即可链接完毕。

初始包括health_check.php与index.php两个文件,往本地的文件夹中添加你所需要的文件,例如我还是上传了wordpress,如果你这样做了,记得在openshift后台添加MySQL数据库和PHPMyAdmin。

其实,使用NetBeans 的 SFTP连接和git的概念是一样的,是另一种实现而已。

· EOF ·