Openshift 安装使用教程

运维 系统运维
OpenShift是红帽公司推出的一个云计算服务平台,配置自己的openshift可以通过几种方式,比如web端,命令行。本文是介绍命令行下的配置,毕竟修改代码什么的都需要在本地修改后再提交。

声明:配置环境是fedora 20,这里是官方文档,找文档是解决问题最有效的方式。

介绍

OpenShift是红帽公司推出的一个云计算服务平台,开发人员可以用它来构建和发布web应用。Openshift广泛支持多种编程语言和框架,如Java,Ruby和PHP等。另外它还提供了多种集成开发工具如Eclipse integration,JBoss Developer Studio和 Jenkins等。OpenShift 基于一个开源生态系统为移动应用,数据库服务等,提供支持。 ——来自百度百科

简言之,就是一个面向开源开发人员开放的平台即服务(PaaS)。

使用openshift首先需要一个账户,注册十分简单,不在此赘述。 配置自己的openshift可以通过几种方式,比如web端,命令行。web端适合刚刚接触的新手,建议新用户多点点链接,熟悉一下大体的使用方法和功能。当准备好创建应用时即往下看。本文是介绍命令行下的配置,毕竟修改代码什么的都需要在本地修改后再提交。而openshift的客户端就是基于命令行的。

安装

安装命令行客户端

  1. sudo yum install rubygem-rhc -y 

初始化设置

  1. sudo rhc setup 

此时需要输入帐号和密码,即为自己在openshift注册时的帐号。

令人费解的是使用我的本地账户运行rhc显示找不到命令,切换为root运行也是如此。只能使用sudo rhc的方式,后面运行git push也是如此,必须是sudo git push。如果你知道原因,烦请不吝赐教。

使用gem更新rhc

  1. sudo gem update rhc 

然后看看自己的账户:

  1. sudo rhc account 

在安装rhc的时候本地用户已和云端绑定,ssh公钥也导入了,因此之后的操作一般不需要再作验证。

查看自己的app

  1. sudo rhc apps 

可以看到自己账户下有多少个app(免费账户最多3个),应用名,git仓库地址,主机地址,绑定的域名,以及模块,数据库版本,数据库用户和密码等等。比如我的wordpress(数据库账户和密码被我屏蔽)。

  1. blog @ http://blog-grunmin.rhcloud.com/ (uuid: 5325520fe0b8cd3a830009ff) 
  2. ------------------------------------------------------------------ 
  3. Domain:          grunmin 
  4. Created:         3:26 PM 
  5. Gears:           1 (defaults to small) 
  6. Git URL:         ssh://5325520fe0b8cd3a830009ff@blog-grunmin.rhcloud.com/~/git/blog.git/ 
  7. Initial Git URL: https://github.com/openshift/wordpress-example.git 
  8. SSH:             5325520fe0b8cd3a830009ff@blog-grunmin.rhcloud.com 
  9. Deployment:      auto (on git push) 
  10. Aliases:         wp.guorunmin.cn 
  11. mysql-5.1 (MySQL 5.1) 
  12. --------------------- 
  13. Gears:          Located with php-5.3 
  14. Connection URL: mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/ 
  15. Database Name:  blog 
  16. Password:       ******** 
  17. Username:       ****** 
  18. php-5.3 (PHP 5.3) 
  19. ----------------- 
  20. Gears: Located with mysql-5.1 

创建应用

创建

看别人的东西干过瘾,不如自己创建一个,创建的方法也很简单,只需一个命令:

  1. sudo rhc app create AppName  

Openshift 支持Java,Ruby,Node.js,PHP,Perl和Python,在AppName 后面可以加其他参数,例如php应用是:

  1. sudo rhc app create AppName php-5.4 

有一种是diy模式,即自行搭建语言环境的,面对一台陌生的机器,我没有任何信心能完成这样的工作^_^。刚开始的时候,我找不到CI框架的环境(有ZF),所以选择新建空应用,以为我自己的代码可以在服务器上运行,想想还是比较天真哈哈哈 如果是安装环境了,改代码的之前需要将仓库克隆到本地。如果新建空应用,那么rhc会自动将仓库克隆下来。

更多参数可以参见官方文档,不用担心看不懂英文,我翻了一遍,文档大体都能看懂。

添加mysql和phpmyadmin模块

既然是php应用,mysql和phpmyadmin怎么能少呢!让我们添加一下:

  1. sudo rhc cartridge add mysql-5.1 -a AppName 
  2. sudo rhc cartridge add phpmyadmin -a AppName 

此时新建的应用信息大概就是你看到的上面那个。建议保存一下有用的信息,比如phpmyadmin的地址,用户名和密码,尤其是使用web端创建的同学*_*

安装wordpress后还需登陆网站添加安装配置信息。

如果要删除应用,执行:

  1. sudo rhc app delete AppName 

开始码字

如果安装的是wordpress这些成熟的应用,因为它提供了管理界面,大概不用去修改代码。如果是自己开发的应用呢?Openshift支持git的方式修改云端上的代码。大体流程应该是这样: 克隆代码到本地->进入应用目录->进入代码目录->修改代码->git add,commit,push->服务器上的应用关闭->一系列编译布置->应用重启->完成

克隆操作

  1. sudo rhc git-clone AppName 

或者知道仓库地址,像这样:

  1. sudo git clone ssh://53257e56e0b8cd671500019b@app-grunmin.rhcloud.com/~/git/app.git/ 

php应用根目录下默认有两个文件夹,.git和.openshift。(安装wordpress时候还有另外三个目录:libs,misc,php,但是我找不到wordpress的代码).openshift目录的作用官网的说明挺详细,我只知道是存放git动作触发的脚本文件,没有深入研究。根目录下还有index.php文件,就是登陆AppName-AccountName.rhcloud.com时看到的页面。这样的设计应该很明朗了,我们直接将代码放在应用根目录下即可。或许你可以写个测试文件看看php的环境,比如”welcome.php”

  1. <?php 
  2.          phpinfo(); 
  3. ?> 

另外我们可以ssh进去主机看看里面的文件。如果想了解的话还是自己找找资料吧,比如openshift用ssh登陆后的目录结构

访问

虽说是否被墙是判断一个服务好坏的标准,不过眼看着这么好的服务被墙还是挺让人窝火。因此我也希望我们能够好好利用openshift,不要见缝插针,浪费资源。

如果是博客,那么有一个自己的域名当然比较好。如果不是的话,为了避免被墙,建议也绑定一个,虽然不一定能起作用。绑定域名,也是一个命令搞定:

  1. sudo rhc alias add AppName YourDomain 

当然,你需要在域名提供商那里添加一个CNAME记录,指向你的openshift域名。 因为缓存的原因,域名解析不会立刻生效。

或者使用https的方式访问。

其他跨栏的姿势很多,不赘述。

参考: openshift使用方法介绍

openshift用ssh登陆后的目录结构

责任编辑:黄丹 来源: 郭润民的博客
相关推荐

2011-08-30 10:28:11

MySQL ProxyLUA

2011-08-03 14:06:30

Xcode 4 安装

2020-11-19 08:00:00

Kubernetes工具开发

2012-11-22 10:07:02

OpenShift虚拟化红帽

2017-12-24 21:29:18

OpenShift持续交付集群

2012-12-25 12:26:39

2014-01-02 10:03:00

2016-12-26 20:52:11

2012-06-29 09:30:14

Red HatPaaS 平台

2012-11-27 10:47:39

红帽OpenShift

2013-05-21 10:17:28

GoogleAndroid Stu

2012-09-11 15:20:08

MooseFS

2011-08-12 13:19:24

iPhoneSDK安装

2013-04-17 10:43:12

Google GlasMyGlass谷歌眼镜

2012-06-27 09:29:32

红帽JBossOpenShift

2011-05-06 10:54:59

CloudFormsOpenShift红帽

2015-10-10 15:56:22

OpenShiftNodeJS部署PaaS

2015-10-12 15:00:05

开源PaaSCloudFoundr

2013-06-21 09:45:13

OpenShiftPaaS联想云产品

2014-04-02 09:24:03

红帽
点赞
收藏

51CTO技术栈公众号