廖雪峰webApp部署

一、准备

这两周都在学廖雪峰老师的Python教程,这里写的是最后实战的部署部分。源码可以 看这里

1)部署没有用到服务器,而是虚拟机,VitualBox安装的Ubuntu 16.04.2。

2)代码用到的是Python3.4(教程是3.5),部署的时候 Fabric用的是2.7版本,所以这里用到了virtualenv。

# 安装virtualenv
pip instal virtualenv

# 创建文件夹存放vitualenv环境
mkdir virtual

cd virtual

# 创建Python2.7对应的虚拟路径 ENV2.7
# C:\Python27 就是你下载Python2.7的存放位置
virtualenv -p C:\Python27\python ENV2.7

# 激活虚拟环境
ENV2.7\Scripts\activate

# 虚拟配置前本地的 C:\Python27 已经安装了 pip
pip install fabric
3)配置好后把virtualenv的路径放到环境变量PATH中,我的是:D:\virtual\ENV2.7\Scripts。

4)Fabric 部署需要运行linux命令,用windows自带的cmd是完成不了的,需要 Cygwin。但是我直接用之前下载的Git Bash就可以了(其实是一直下不成功Cygwin,才想起替代的)。


二、部署

1)在 webApp下运行 fab build,不知道是缺少对应文件还是环境的问题,一直 Aborting,但是我直接运行 tar ** 命令来生成代码压缩包就没有问题。



2)上传并且按装到虚拟机。fabfile.py 中有个地方需要更改,不然没办法成功。

#服务器登录用户名
env.user = 'eric'
env.password = 'eric' # sudo password

#sudo为root
env.sudo_user = 'root'
env.password = 'eric' # sudo password 这是你虚拟机获取管理员权限的密码,必须要加上

#服务器地址,这里是我的虚拟机的 ipv4 地址
env.hosts = ['192.168.2.10']

#服务器MySQL用户名和密码
db_user = 'root'
db_password = 'eric'

_TAR_FILE = 'dist-awesome.tar.gz'

3)fab deploy 效果。


....



4)如果fab deploy出现错误,记得更改nginx和supervisor配置文件对应自己服务器的信息。比如下面awesome.conf对应的user就是你当前 linux 的用户名。还要 command 需要加上 python3 而不是直接运行 app.py的目录(这是廖老师没有加上,我看error log得到的结论,linux装的是python3.5)。



5)nginx配置文件。我没有申请域名,直接把 server_name填上本机地址。



6)重启supervisor 和 nginx。



7)在虚拟机的浏览器打开 127.0.0.1。



8)顺便配上部署到linux的项目目录。



三、结束语

只是部署完后作一个总结,如果能帮到一些人,那是最好的。


四、补充

1)去万网买了个域名,然后解析到虚拟机的IP上面,再在 nginx的配置文件awesome上把server_name改成域名,再重启nginx和supervisor。



2)这时候在主机(windows)上面已经可以通过域名访问网站了,而且,连了本机WiFi的手机也可以通过域名访问。就是外界访问(类似用手机4G网络)不成功,因为我的域名绑定的只是本地虚拟机的IP,而不是共享服务器的IP。具体我还要好好学习。





3)上面分别是windows主机和手机访问域名的结果。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值