Nginx + Gunicorn项目部署
Nginx的安装
1. 从官网下载tar.gz文件 放入当前文件夹
wget -c https://nginx.org/download/nginx-1.20.1.tar.gz ./
2.解压
tar -zxvf nginx-1.20.1.tar.gz
cd nginx-1.20.1
3.打开里面的configure文件,定位到带有/usr/local/sbin的位置,修改他安装command的目录(把当前路径加在前面)
注意路径要争正确,否则找不到路径会报错安装失败
NGX_PREFIX=${NGX_PREFIX:-/hida_dict_web/backend/nginx-1.20.1/start-backend}
4. 输入 ./configure --with-http_ssl_module 命令,此时configure文件会根据配置自动生成一个Makefile文件
5. make && make install 执行安装
安装完成会在路径下看到conf 和 sbin文件夹,意味着我们可以在该文件夹路径执行命令
windows是直接有编译好的包,自带一个Nginx.exe程序,把打包好的前端项目放到html文件夹即可
如果是django作为纯后端程序,需要同时用gunicorn作为通信网关启动gunicore再通过Nginx从外面接收内容进行转发
外部请求 -> Nginx -> Gunicorn -> Django的URL -> Views文件接收request -> 数据库处理逻辑
Gunicorn 的安装和配置--参考:https://www.jianshu.com/p/5600af9ff238
1. pip install gunicorn (发现uwgsi在centos无法安装成功,提示egg_info有问题,可能是uwgsi太老没人维护更新)
2. 在backend目录路径下创建一个gunicorn.conf.py文件作为配置文件
import logging import logging.handlers from logging.handlers import WatchedFileHandler import os import multiprocessing bind = '10.1.240.46:8001' timeout=60 worker_class = 'gevent' workers = multiprocessing.cpu_count() #进程数 threads = 2
3. 在后台启动
nohup gunicorn backend.wsgi:application -c gunicorn.conf.py
此时控制台提示ignore input....在vscode关闭掉这个控制台程序仍可保持运行(如果按Ctrl + C 会退出, 直接丢弃这个控制台即可)
关闭gunicorn :
1. 获取进程树
pstree -ap | grep gunicorn
2.关闭进程
kill pid
重启进程是 kill -HUP pid
关闭 Nginx 服务
sbin/nginx -s stop
浙公网安备 33010602011771号