RedHat Openshift 搭建个人博客(wordpress)指南

ps:注意要把cygwin\home\Administrator\.ssh文件夹里面libra_id_rsa.pub的文本内容拷到Public Keys里面不然git会出问题

简介:

Openshift 是 红帽公司近日推出的一个面向开源开发人员开放的平台即服务(PaaS), 同其他的云平台相比, 红帽OpenShift提供比任何PaaS更多的灵活性,它支持用于Java、Python、PHP、Perl和Ruby的更多的开发框架,包括 Spring、Seam、Weld、CDI、Rails、Rack、Symfony、Zend Framework、Twisted、Django和Java E。它包含SQL和NoSQL数据存储和一个分布式文件系统

OpenShift Express 版 允许你在云端建立,配置,管理应用。 他在云端提供 空间、CPU、内存以及一个Apache 或 JBoss 的服务器,这个是取决于你的具体应用。你还可以生成一个应用模板。OpenShift Express 甚至还可以给你提供一个有限的DNS。

OpenShift Express 目前可为每个应用提供256M存放空间,300M内存,以及100M缓存(swap space)以防突发流量。这个只是体验版哦!目前 OpenShift 的服务器是放在亚马逊云端,所以国内访问可能延迟会有些高。

OpenShift Express 目前每个人可以创建一个域,5个应用。每个应用不限制使用什么语言,但一个应用只能使用一种语言,这个在生成APP的时候会选择。 最后生成的域名是 <app name>-<domain name>.rhcloud.com 。 例如,你的domain 为 redhat,app 名称为 openshift , 则最后的域名就是 openshift-redhat.rhcloud.com

OpenShift 目前使用 GIT 来管理代码,要更改代码(添加 commit)只能在本地实现,在服务器端生成的数据无法保存,所以openshift有一个专门的文件夹(data)来存放服务端生成以及你不想更改的数据。 所以服务器端的目录结构是这样的

PHP
|– Application Name
| |– conf
| | |– magic -> /etc/httpd/conf/magic
| | `– php.ini
| |– conf.d
| |– data          <–  这里存放数据库以及其他server端生成的数据
| |– logs
| | |– access_log
| | `– error_log
| |– modules -> /usr/lib64/httpd/modules
| |– repo         <– 这里存放的才是你的代码
| | |– data
| | | `– README
| | |– libs
| | | `– README
| | |– php
| | | |– health_check.php
| | | `– index.php
| | `– README
| |– run
| |– sessions
| `– tmp

其他语言的目录结构见

注册:

1、登陆Openshift 官方网站 (https://openshift.redhat.com/app )。

2、点击“TRY IT NOW! ” 开始注册

3、填写 email 地址 ,设置你的Openshift 密码,验证码,点击注册。

4、现在你的注册邮箱将会收到一封确认邮件,点击确认链接确认注册。

安装环境:

官方给出了四种环境, 包括 RHEL, Fedora, 其他类 Linux, Mac OS, Windows。不过都差不多,都是命令行操作,windows下也是通过Cygwin 来实现的,所以我们这里以 Fedora 为例来讲解。

系统需求:

RHEL6 或 Fedora 14 及以上

ROOT 或 sudo 权限

安装客户端:

1、 下载  ,将 repo 文件放到 /etc/yum.repo/ 文件夹下。

$ sudo mv ~/Downloads/openshift.repo /etc/yum.repos.d/
将 ~/Downloads/openshift.repo 替换为你存放 repo 文件的位置
2、 安装客户端。
$ sudo yum -y install rhc
sudo 权限配置请自己搜索互联网。也可以直接用ROOT权限设置。

$ rhc-

rhc-chk            rhc-create-domain  rhc-snapshot       rhc-user-info

rhc-create-app     rhc-ctl-app        rhc-tail-files

客户端介绍:

rhc-chk : 检测本地环境配置

rhc-user-info :显示用户信息

rhc-create-domain :创建个人域

rhc-create-app : 创建应用

rhc-ctl-app : 应用控制,可以开始、停止、重起应用。还可以添加mysql数据库等

rhc-snapshot : 应用备份

rhc-tail-files : 查看应用日志

创建域和应用: 这一步最简单的办法是登陆网站,进入自己的管理页面,然后在线建立,很简单,呵呵

$ rhc-create-domain -n DomainName -l rhlogin -p password [OptionalParameters]

DomainName : 就是你准备建立的域的名字啦

rhlogin :你的注册邮箱,也就是用户名

password :密码……不用解释吧。

OptionalParameters : 其他参数,例如更改配置文件位置 –config

生成域例子:

$ rhc-create-domain -n ecs -l user@example.com

Password: <user password>

Generating Openshift Express ssh key to /home/UserName/.ssh/libra_id_rsa <–这里会生成一个新的rsa key 用来验证你的身份,具体rsa的内容自己网上搜索。其实一路回车就行,rsa 的密码不设置也没事。其实大家一般都不设 :)

Generating public/private RSA key pair.

Created directory ‘/home/UserName/.ssh’.

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /home/UserName/.ssh/libra_id_rsa.

Your public key has been saved in /home/UserName/.ssh/libra_id_rsa.pub.

Contacting https://openshift.redhat.com

Adding rhlogin to /home/UserName/.openshift/express.conf <–这个就是你的配置文件, 可以用 –config 更改

Creation successful

You may now create an application.  Please make note of your local config file

in /home/UserName/.openshift/express.conf which has been created and populated for

you.

完成后其实还会在.ssh文件夹下生成一个conf 文件,其实你要是只用一个ras key的话不需要理会,一般有特殊需求,要在不同的地方用不同的key的才会配置这个文件。具体内容是

$ cat config

# Added by rhc-create-app on Thu Sep  1 23:11:14 CST 2011

Host *.rhcloud.com

IdentityFile ~/.ssh/libra_id_rsa

VerifyHostKeyDNS yes

StrictHostKeyChecking no

UserKnownHostsFile ~/.ssh/libra_known_hosts

生成应用例子:

rhc-create-app -a racer -t php-5.3 -l your@example.com

Password: <user password>

Creating remote application space: racer

Contacting https://openshift.redhat.com

RESULT:

Successfully created application: racer

Adding rhcloud.com to ~/.ssh/config

Warning: Permanently added ‘racer-ecs.rhcloud.com,50.17.130.104′ (RSA) to the

list of known hosts.

Receiving objects: 100% (19/19), done.

Confirming application racer is available

Attempt # 1

Success!  Your application is now published here:

http://racer-ecs.rhcloud.com/

The remote repository is located here:

ssh://99b3a77fb9204c6687618bcb92c0548c@racer-ecs.rhcloud.com/~/git/racer.git/

这个时候你就可以用 app-domain.rhcloud.com来登陆查看你的app了。

提示:如果你不想用这个rhcloud的二级域名,而是想用自己的独立域名,Openshift 提供了一个小DNS,你可以绑定自己的域名到这里哦!
$ rhc-ctl-app -a <app name> -c add-alias –alias “your own domain name”
使用GIT管理你的应用:
在上面的步骤,我们建立了一个基于php5.3的 app。而我们的最终目标是建立一个wordpress。
首先你要下载一个最新版的 wordpress。
1、 把你的应用clone 下来,ssh repo 就是最后给你的那一串 ssh://…git/

$ git clone <your ssh repo>

$ cd <your app name>

$ ls

deplist.txt  libs  misc  php  README

README 中有一些数据库变量说明,自己有兴趣可以看一下。

2、 把php文件夹下原来的东东删除,然后把wordpress 解压到 php 文件夹下

$ cd php

$ rm *.php

$ cp ~/Downloads/wordpress-3.3.tar.gz .

$ tar xvf wordpress-3.3.tar.gz

$ rm wordpress-3.3.tar.gz

$ mv wordpress/ blog/
这里我是在 php 下 新建了一个blog文件夹放 wordpress, 因为以后还要加别的东西,如果你只是用来作博客,直接把wordpress解压到php目录就行。
3、 创建你的mysql数据库
$ rhc-ctl-app -a <app name> -l <login email> -e add-mysql-5.1

Password:

RESULT:

Mysql 5.1 database added.  Please make note of these credentials:

Root User: admin

Root Password: “you pass”

Database Name: “data name”

Connection URL: mysql://127.2.21.125:3306/

You can manage your new Mysql database by also embedding phpmyadmin-3.4.

4、更改你的wordpress配置文件,添加数据库

$ cd blog

$ cp wp-config-sample.php wp-config.php

$ vim wp-config.php 将这几项改一下

/** The name of the database for WordPress */

define(‘DB_NAME’, ‘<your app name>’);

/** MySQL database username */

define(‘DB_USER’, ‘admin’);

/** MySQL database password */

define(‘DB_PASSWORD’, ‘<your password>’);

/** MySQL hostname */

define(‘DB_HOST’, ’127.2.21.125:3306′);

5、上传APP代码

$ cd http://www.cnblogs.com/

$ git add -A

$ git commit -m “add my wordpress”

$ git push

完毕,这个时候你就可以登陆你的网站来管理你的wordpress了。

6、 登陆网站,设置wordpress

填写网站名称,用户名,密码,邮箱,搞定。

http://hangbin-liu.rhcloud.com/blog/

http://hangbin-liu.rhcloud.com/wiki/

备份博客:

$ rhc-snapshot -l <login email> -s

原文链接:http://hi.baidu.com/liuhangbin/blog/item/0b602edd2926d1bfcd1166c0.html

原文地址:https://www.cnblogs.com/Leo_wl/p/2868194.html