pythonWeb的部署(Django+Uwsgi):
1、 部署服务器上需要的Python3.6环境:
安装集成了python3.6 和pip ,virtualenv虚拟环境 的Anaconda(Anaconda3-5.0.1-Lin-x86_64.sh)
下载地址 :https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.0.1-Linux-x86_64.sh
下载完成后放到服务器的/root目录下,
在/root目录下运行 “bash Anaconda3-5.0.1-Lin-x86_64.sh“ 进行安装,
安装过程中当遇到【yes/no】的提示时,选择yes,
等待安装完毕,修改服务器上的默认python版本为Anaconda中的python,
运行“vim /etc/profile”,在最后一行输入” export PATH=/root/anaconda3/bin:$PATH”,
Esc +“:wq”保存后,运行“source /etc/profile”刷新配置。
此时修改python环境完成,输入python –version查看当前默认python版本。
2、 配置uwsgi(必须完成第一步配置python环境后才可配置uwsgi,否则版本不对,出错):
下载uwsgi(uwsgi-2.0.17.1.tar.gz)的压缩包,
下载地址为:https://pypi.org/project/uWSGI/#files ,
下载完成后传输到服务器的/root 目录下,
在/root目录下运行“tar –zxvf uwsgi-2.0.17.1.tar.gz”进行解压,
cd 到被解压的uwsgi目录下,运行‘“make”进行安装,等待安装完成,
运行“./uwsgi --version”查看版本并确认是否安装成功。
3、 部署相应的Django-pythonWeb服务:
将需要进行部署的pythonWeb文件夹放到/root目录下,
cd 到该pythonWeb文件夹下,既manage.py所在的那一级目录,
运行“vim pythonWebUwsgi.ini”编写对应此web服务的uwsgi配置文件,配置文件可随意命名,后缀为ini,配置文件内容为:
[uwsgi] chdir = /root/sendPost module = sendPost.wsgi:application http = 127.0.0.1:8000 master = true |
解释下每一行:第一行必写,否则uwsgi无法识别此配置文件
第二行项目所在路径,第三行对应wsgi.py所在路径
第四行为主机和端口号,第五行设置默认主进程运行
4、uwsgi服务的启动和停止:
启动:在uwsgi目录下,运行“./uwsgi xxxx/pythonWebUwsgi.ini” 既在uwsgi目录下启动我们项目下自己配置的uwsgi配置文件。
停止:“Ctrl+C” 或者 “killall -9 uwsgi”
PS:
Linux上安装python(我没有用到,只是单纯的记录下)
python解压包放上去,mv python-xx /opt/
cd /opt/
tar -xzvf Python-3.6.1.tgz -C /usr/local/src/
cd /usr/local/src/Python-3.6.1
./configure --prefix=/usr/local/python3
make && make install
cd /etc/profile.d/
vim python3.sh
export PATH="$PATH:/usr/local/python3/bin"
source ../profile
echo $PATH
mv /usr/bin/python /usr/bin/python2.6
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python
python --version
#vi /usr/bin/yum
把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.6