这个后台主要是LKY大神的作品,当时我们一起做安卓课程淘宝宝(TBB),一款名字山寨了淘宝、界面山寨了微信的app。现在昱神把他那的后台关了,所以我打算迁移到我的阿里云上,也许还能改动一波,总之先试试自己部署一个python(webpy + mysql)的后台。
顺便提一句,标题里的冒号是通过引号的方式解决的title: "xx:x"
Aliyun Environment Setting
mysql
阿里云买了一年的学生优惠机,本身是CentOS-7,捣鼓了半天都没装上mysql,试了community的mysql也不行。后来一狠心就重装成Ubuntu-14.04-64bit了,一开始也是死活装不上mysql,识别不出mysql的package之类的。后来经历了换源和aptitude大法才强行装上了mysql。
安装过程中会提示说有dependencies的问题,会提供几种解决方案,第一种安不上就点no跳过它往后试。我貌似是在第二种就安装上了的。
git
安装git
1$ apt-get install git首先设置Git提交时显示的用户名和邮箱:
12$ git config --global user.name "AliyunUbuntu"$ git config --global user.email "xxx@gmail.com"为阿里云Ubuntu创建SSH。生成的SSH密钥会存放在~/.ssh文件夹中,可用cd进入确认是否已经生成过SSH密钥。若有则需备份后(cp [old] [new])再继续生成:
1$ ssh-keygen -t rsa -C "xxx@gmail.com"密钥生成后在主目录下的.ssh文件夹中就有私钥id_rsa和公钥id_rsa.pub两个文件。vi打开pub公钥中,把内容都复制粘贴到你的github账户SSHKey即可。在putty中用vim复制:直接按下ctrl+v后就进入”viewing block”模式,鼠标拖选后再按下y即可按照该格式复制出来。
从github仓库抓取TBB的代码到Aliyun。
1$ git clone git@github.com:bobbyliujb/TBB.git
Python
安装webpy轻量级web框架,参考官方安装指南:
1$ sudo apt-get install python-webpy不过按官网的说法,这种方法不能获取最新版本的webpy。
接下来安装MySQLdb,用pip方式安装就再次碰到package损坏的问题了。但是直接用下面的就可以了:
1$ apt-get install python-mysqldb
Programming
>
LKY大神的描述:后台搭建在阿里云上,采用Python语言进行开发,使用web.py服务器框架,云端部署Git环境,方便版本控制。后台的稳定运行使用nohup指令,Git版本更新需要忽略pyc文件和nohup.out文件。客户端请求方式统一为POST,可以通过在POST请求中加入键值对参数传参;服务器返回的信息格式为JSON,使用Python可以轻松将字典(键值对集)转换成JSON压入返回信息中。
>
webpy是一个轻量级Python web框架,它简单而且功能强大。具体使用参看web.py 0.3新手指南。目前我只是把代码迁移到云上,先建好tbb database,再用source tbb.sql语句执行建表。在vi中将dbop.py全文中LKY的数据库root密码换成我自己的:
建立好一切所需文件夹(../head & ../picture)后,即可运行。先把更新后的代码推送到远程仓库:
Run the Server
nohup可以保持程序在后台执行,不会因为终端关闭就hang up:
真正要关闭时需要得到进程的ID,强行kill掉: