Mindee

主要记录各种包的使用代码例子, 遇到问题的处理方式 项目记录更新全部代码

  博客园  :: 首页  :: 新随笔  ::  ::  :: 管理

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

posted on 2022-03-20 01:48  Mindee  阅读(305)  评论(0)    收藏  举报