成功部署python web项目
历时两天,反复看视频,各种稀奇古怪的错误,终于部署成功了。简要记录部署过程及相关注意事项

一。安装python
二。安装虚拟环境
三。安装uwsgi
四。安装nginx
一。安装python
1.安装gcc
yum install gcc -y
2.安装python依赖
yum install zlib zlib-devel -y
yum install bzip2 bzip2-devel -y
yum install ncurses ncurses-devel -y
yum install readline readline-devel -y
yum install openssl openssl-devel -y
yum install xz lzma xz-devel -y
yum install sqlite sqlite-devel -y
yum install gdbm gdbm-devel -y
yum install tk tk-devel -y
yum install mysql-devel -y
yum install python-devel -y
yum install libffi-devel -y
yum install tar -y
yum install make -y
3.下载源码
wget https://www.python.org/ftp/python/3.9.5/Python-3.9.5.tgz
4.解压&编译&安装
tar -xvf Python-3.9.5.tgz
cd Python-3.9.5
./configure
make all
make install
5.python解释器配置豆瓣源
pip3.9 config set global.index-url https://pypi.douban.com/simple/
二。安装虚拟环境
1.安装virtualenv
pip3.9 install virtualenv
pip3.9 install virtualenv -i https://mirrors.aliyun.com/pypi/simple/
2.创建虚拟环境
代码:
/data/www/day28
环境:
/envs/nb
mkdir /envs
virtualenv /envs/nb –python=python3.9
3.激活虚拟环境
source /envs/nb/bin/activate
安装项目依赖的pip包
pip install flask
pip install flask -i https://mirrors.aliyun.com/pypi/simple/
三。安装uwsgi
1.在虚拟环境下安装
source /envs/nb/bin/activate
pip install uwsgi
pip install uwsgi -i https://mirrors.aliyun.com/pypi/simple/
2.基于uwsgi运行flask项目
cd 项目目录
cd /data/www/day28/
—命令的方式
uwsgi –http:80 –wsgi-file app.py –callable app
—配置文件的方式(推荐)
nb_uwsgi.ini
[uwsgi]
socket=127.0.0.1:8001
chdir=/data/www/day28/
wsgi-file=app.py
callable=app #这里的app就是app,不要写成其他,他对应的是py文件里面的那个app.run的app
processes=1
virtualenv=/envs/nb/
uwsgi –ini nb_uwsgi.ini
停止的话按下ctrl+c
如果想让他以后台的方式运行
uwsgi –ini nb_uwsgi.ini
-停止
ps -ef|grep nb_uwsgi
kill -9 12648
四。Nginx
1.安装
yum install nginx -y
2.配置
-普通请求,转发给8001端口
-/static/ /data/www/webapp/static
nginx的默认配置文件路径 /etc/nginx/nginx.conf
3.启动
–启动
systemctl start nginx
systemctl stop nginx
systemctl restart nginx
–开机启动
systemctl enable nginx
4.访问