ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

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

2022-01-27 13:35:09  阅读:178  来源: 互联网

标签:web Gunicorn flask sudo dev python apt install


目录

系统环境

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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有