系统相关
首页 > 系统相关> > [Ubuntu] [Gunicorn] 部署 flask-web项目 无反向代理 步骤记录

[Ubuntu] [Gunicorn] 部署 flask-web项目 无反向代理 步骤记录

作者:互联网

目录

系统环境

sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
#安装相关依赖
sudo apt-get install build-essential python-dev python-setuptools python-pip python-smbus
sudo apt-get install build-essential libncursesw5-dev libgdbm-dev libc6-dev
sudo apt-get install zlib1g-dev libsqlite3-dev tk-dev
sudo apt-get install libssl-dev openssl
sudo apt-get install libffi-dev

python环境

#获取python
wget https://www.Python.org/ftp/python/3.10.0/Python-3.10.0.tgz
#解压 并进入目录
tar -zxvf Python-3.10.0.tgz
cd Python-3.10.0.tgz

# 编译安装(有permission相关报错的话命令之前加上 sudo)
./configure  --prefix=/usr/local/python3 
make 
make install
 
#创建软连接(不建议覆盖ubuntu自带的2.x版本的python,有依赖问题)
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

#为flask创建专属环境
pip3 install virtualenv
cd flask项目目录
#创建虚拟环境
virtualenv 虚拟环境名
#激活
source 虚拟环境名/bin/activate
#通过requirements.txt安装依赖包
pip3 install -r- requirements.txt

WEB环境

#gunicorn相关依赖
pip3 install greenlet # 异步
pip3 install eventlet # eventlet workers
pip3 install gevent   # gevent workers

#安装gunicorn
pip3 install gunicorn

#启动 在5000端口
#假设你的flask主程序叫"my_flask.py"
#my_flask.py里面实例化的app对象叫app1
gunicorn -w 3 -b 0.0.0.0:5000 my_flask:app1

此时即可通过你的服务器公网 ip:5000 访问到你的flask项目

gunicorn的相关参数

-c CONFIG, --config=CONFIG
# 设定配置文件
-b BIND, --bind=BIND
# 设定绑定的端口
-w WORKERS, --workers=WORKERS
# 设置工作进程数通常2-4个,参考服务器核心数定制
-k MODULE
# 选定异步工作方式使用的模块

标签:web,Gunicorn,flask,sudo,dev,python,apt,install
来源: https://blog.csdn.net/hackzzh/article/details/122715587