先前尝试过一些免费空间,比如说000webhost 、0fees.net 、GAE 等,但由于国内外客观原因都不太靠谱。最近用java弄独立博客 ,想买一空间,发现java空间挺贵的,于是又去找了一下免费的东东,发现红帽的免费云,网上的介绍是这样的:
* O( O3 H/ Z7 [6 @4 a* |OpenShift 平台支持很多编程语言、框架和数据库,包括:Ruby, Python, Perl, PHP, Java EE, Spring, MySQL, SQLite, MongoDB, Membase and Memcache. OpenShift 目前尚未开源,但红帽子称将来会这么做。
1 O. b+ F# J( z7 N& p; x到官网看了下资料,介绍java的资料比较少,几乎没有,于是先熟悉一下从Drupal开始学习如何使用。2 J) X8 G' e0 }+ A0 m7 O
1 Y% o2 p9 _! d& i3 x7 W# V! w3 F! i( q9 q, A
1、OpenShift Express 简介
/ P& [8 y0 w1 y, X% @4 d2 N/ m7 U 这是红帽退出的一项PAAS(Platform as a service)服务,OpenShift的基础来源于Red Hat于2010年11月收购的科技公司Makara technology。OpenShift支持不同标准的开发架构,包括Java、Python、PHP语言以及Spring、Seam、Weld、CDI、Rails、Rack、Symfony、Zend Framework、Twisted、Django、Java EE框架。红帽提供的OpenShift具有三大特色:免费的快速版本、可嵌入监测的灵活版本、具备大型部署能力的版本。
- ?2 r f. Q* ]4 s. N1 E1 G- R! V
5 b2 ?) G* d; X2、搭建环境及安装
! d# L' B* Q3 i6 s( J! T# H5 [ Openshift的管理需要安装客户端,客户端支持多种平台:/ H" Z! k# m+ @8 |3 y. C7 m) X& _
- Red Hat Enterprise Linux or Fedora
- Other Linux Systems
; j$ U9 J. W; V' r - Mac OS X; _( m R) c" ?5 L& {
- Windows
! J) g0 t8 z( g5 Q4 c8 f 在windows上安装需要cygwin,这个东西对于我说比较麻烦,于是我在虚拟机上装了一个CentOS6来搭建环境。由于CentOS6和RHEL血缘关系比较近,我尝试用RHEL的方式安装客户端,但是各种错误,最后用其他Linux的方法,一次成功,具体就是在终端里面执行如下命令:
; W8 S0 [- O Dsudo yum install git
0 j' V& [' g, Asudo yum install ruby
! X/ E, Q Q, T, Usudo yum install rubygems) C0 V/ ]$ D) S+ }6 v# Q3 @
sudo yum install ruby-devel
u6 l& V3 l) D' bsu -c 'gem install rhc', `& Y; p* k& |! P
6 r8 f: J; Z* B# y$ N1 j# i4 r
6 h* J7 K9 Z% w6 b* `' m/ ` 3、创建域和应用
( M8 ?( ?0 ?/ z+ t' |在使用Openshift Express免费云之前需要先去注册一个帐号,然后创建域,然后再创建应用,最后你的域名是应用名-域名.rhcloud.com,例如:drupal-tedeum.rhcloud.com 。! a2 `: S5 e" N1 @& j% P
创建域就是在终端上执行:rhc-create-domain -n tedeum -l ddd@mailaddress.com -p password
$ v/ K" R& [" j. o' H5 e上面的命令意思就是ddd@mailaddress.com这个用户用password这个密码创建了一个名为tedeum的域。: O" ]+ Q. f1 M
创建应用类似,创建名为Drupal的应用:rhc-create-app -a drupal -t php-5.3 -l ddd@mailaddress.com -p password
& q, E2 f3 {0 Z创建成功后,访问你的网址可以看到如下界面:% {, {- F5 t! @- I9 w3 H& z
2 _1 x. x$ \# b 2 Y" f$ Q2 h+ h) E7 V
4、上传应用
J2 s$ P: T& D* K8 F( o应用创建成功后,会在当前工作目录下创建一个和应用名对应的文件夹,这里是drupal。进去drupal目录后有一个php文件夹,把下载到的Drupal7文件解压到这个php文件夹下面。然后在drupal目录下执行以下命令:
7 X- T: a6 I3 X X9 N, ^git add -A S1 C$ z- g7 l' D) v# I% X" _
git commit -a -m 'install drupal 7', q2 ]* |/ k, e @' g
git push* B, `) @8 n# }! v4 k; _
上面的命令会把你在本地的东西提交到服务器。+ L" t; C! O' ^, T, [' z& e9 G
2 V2 k- Q Y$ g: A+ P, \- F$ ^
4 ?' l3 o- X5 ]0 X5 M
5、安装Drupal
& T! r% }+ p+ s( F8 ?1 Kdrupal上传成功后,访问地址就可以安装了,由于Drupal的安装不在本文范畴,就不多说了。要注意的一点是,我在安装的时候是按照官方文档使用sqlite数据库,数据文件路径是../../data/.ht.sqlite,不清楚其他路径会不会有问题。另外mysql也没有研究,我将在后续进行jboss7和mysql的研究,请拭目以待。- j5 I N5 `( Y1 W
, `$ ` m& @. P; z1 z- u$ J! ~2 p7 `0 @# f& D$ Q1 s
6、常用命令/ j1 v. W4 F; [% v. Y6 C( C
最后介绍几个我在这个过程中用到的一些常用的命令:
0 P O( B, Y7 i! s! d7 {创建域:
4 n1 u; L9 \" b/ n. v2 S5 Krhc-create-domain -n tedeum -l ddd@mailaddress.com -p password
) t0 M, v* t9 _% B% Z. F* U7 K创建应用:
3 D8 B+ w+ E: c( H1 O0 G; crhc-create-app -a drupal -t php-5.3 -l ddd@mailaddress.com -p password
( b, k# r+ v% {) \* P. o- o4 B查询用户信息:
/ F6 O* P5 K4 S( C$ z- g" k5 t) Crhc-user-info -l jipeng.sun@gmail.com -p password9 M' f3 t; A0 V t$ k
查询应用状态:3 M; V9 c$ H2 D: k+ k
rhc-ctl-app -a drupal -l ddd@mailaddress.com -p password -c status
6 V t; Q6 }' o" D删除应用:8 u/ E6 ^9 J: p: h' F% S
rhc-ctl-app -a drupal -l ddd@mailaddress.com -p password -c destroy
2 k- r8 Q4 N' V- d6 N9 h0 W% m! i启动应用:$ h1 T. m) }5 {. u8 R
rhc-ctl-app -a drupal -l ddd@mailaddress.com -p password -c start
- d8 _2 w5 c! O) V停止应用:, _" f' A5 d( X" {8 y7 O3 `- Y& F6 S# `
rhc-ctl-app -a drupal -l ddd@mailaddress.com -p password -c
% r7 p0 r* l D1 g! g/ ^& t" I" ?
$ D- N1 [+ ?: Q5 w# Q 7、示例: 我的网站是:http://drupal-tedeum.rhcloud.com1 r9 _% v, `6 b9 Y' \/ Y
7 s6 }5 p3 s2 w* G' ~$ e
: t9 W/ h& z6 X& o- W, P: O
5 [# f% N: [ w6 I. ^: W
本文选自tedeum的博客,谢谢!
3 B& |4 X' l# q" b
: n6 P9 [2 g/ ~" T* S6 v" Y1 w: F( ^ b: d
3 a7 a/ l* W+ M a% L3 W1 x, b" N* F- }5 k' L
|
|