项目部署工具之walle
最近部署walle进行线上项目的上线发布,安装中遇到的问题,在此记录
walle(http://www.walle-web.io)
git地址:https://github.com/meolu/walle-web
参照官网进行2.0的安装
1。使用docker可进行顺利安装
2。使用标准方式进行安装
1)一定要使用git clone的方式下载项目代码,不要下载git上的发布版本,因为其中有一些bug的修复,只有在master中才会修改,而在发布版本中并没有,也就是是说发布版本非最新版本,会造成安装失败,缺少包或者包版本不正确等各种问题
2)本地安装python2,因为yum的一些命令都是基于python2执行的,所以必不可少,也不能把python2全局换成python3,导致一些命令的失效
3)使用python2安装依赖包,使用pip3创建虚拟环境
脚本中使用: pip install virtualenv virtualenv --no-site-packages venv 在python3中可使用venv模块创建 python3 -m venv venv
4)进入到虚拟环境中,进行依赖包的安装,如果按照文档上的进行安装一定会出现某些包的版本问题
MonkeyPatchWarning: Monkey-patching ssl after ssl has already been imported may lead to errors
需要修改的包:
SQLAlchemy==1.2.14 ==》 SQLAlchemy==1.3.0 gevent==1.3.7 ==〉 gevent==1.3.5
bug说明:https://github.com/meolu/walle-web/issues/1096
5)修改项目配置文件
修改mysql相关配置项
注意host的修改,要与server_name保持一致
如果密码中有特殊字符,处理方式
from urllib import quote_plus as urlquote connstr = "mysql+mysqldb://root:%s@127.0.0.1:3306/dbname?charset=utf8" % urlquote('password') engine = create_engine(connstr,echo=True,max_overflow=5)