转自我自己的:http://blog.gideal.org/articles/2012/09/05/1346782192657.html
Openshift 已经出来好久了由于速度在国内不是很好所以一直没鼓捣,这几天闲着就搞了个自己部署的diy的
由于Openshift只能创建一个python2.6的py环境所以这里拿自定义py2.7+django为列吧就
首先需要一个openshift的账户这个可以到www.openshift.com去注册至于如何注册如何创建app不在今天的讨论之列所以不明白的可以百度或者谷歌一下
完成这个内容可能需要一个软件可以到这篇log上的地址去下载OpenShift Client Tools绑定域名下面正题开始
首先在Openshift里创建一个应用
rhc-create-app -a -t diy-0.1
#这句的意思是创建一个openshift的应用环境为自己diy的注为你要创建的app的名字要记住以下会用到不要直接输入
#这里会提示你输入密码,输入openshift的密码就可以了,然后输入yes
#之后会提示你输入公钥密码这里输入你创建的那个公钥密码(不知道是什么?百度谷歌Openshift 注册里边你应该很详细)
觉得上边很麻烦可以直接到openshift网站上去创建点几下鼠标就可以了创建完了会生成一个ssh <好多位的数字英文组合以下就叫“”>@-onlinezxy.rhcloud.com这样的一个地址把代码用git拉下来
git clone ssh://@-onlinezxy.rhcloud.com/~/git/.git/
之后先不管这个最后要用
然后ssh到你的openshift的服务器
ssh @-onlinezxy.rhcloud.com
如果没搞明白或者不知道@-onlinezxy.rhcloud.com是什么意思或者没找到的话也可以在创建完diy的应用之后在 用openshift client tools去查一下命令为以下
rhc app show -a 你刚才创建的应用名 #大概会出现以下内容红色部分就是你要找的
Application Info================py27Framework:diy-0.1Creation:2012-05-15T22:54:09-04:00UUID:1qaz2wsx3edc4rfv GitURL:ssh://1qaz2wsx3edc4rfv@py27-aabbccd.rhcloud.com/~/git/py27.git/PublicURL:http://py27-aabbccd.rhcloud.com/Embedded:None
之后进入临时目录
cd $OPENSHIFT_TMP_DIR
逐个下载python2.7.3 setuptools pip三个并解压缩安装
wget http://python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz
wget http://pypi.python.org/packages/source/p/pip/pip-1.1.tar.gz
tar zxf Python-2.7.3.tar.bz2
tar zxf setuptools-0.6c11.tar.gz
tar zxf pip-1.1.tar.gz
cd Python-2.7.3
./configure --prefix=$OPENSHIFT_RUNTIME_DIR
make install
cd setuptools-0.6c11
$OPENSHIFT_RUNTIME_DIR/bin/python setup.py install
cd pip-1.1
$OPENSHIFT_RUNTIME_DIR/bin/python setup.py install
加入环境变量
export PATH=$OPENSHIFT_RUNTIME_DIR/bin:$PATH
下载uwsgi
cd $OPENSHIFT_TMP_DIR
pip install uwsgi
清空tmp目录
cd ~
rm -rf $OPENSHIFT_TMP_DIR/*
好了基本的组件都完成了现在开始修改你的那个app 找到你刚才拉下来的代码文件夹只留.git目录其他的都删除然后把下面这个包解压复制进去然后
打开git的shell进入你的app目录
git add .
git commit -am "initial commit"
git push
打开你openshift的diy应用的地址会出现
Running你的应用名onPythonversion2.7.3完成了 最后说一下应用的这个requirements.txt文件里是通过pip下载了一个django1.4的框架如果不需要django可以把里边清空
© 著作权归作者所有
本博客清晰的介绍了 OpenShift 自定义环境的过程 但有一点需要改正
./configure --prefix=$OPENSHIFT_RUNTIME_DIR
export PATH=$OPENSHIFT_RUNTIME_DIR/bin:$PATH
应将$OPENDHIFT_RUNTIME_DIR 改为 $OPENSHIFT_DATA_DIR 这样可以避免出现权限问题。