用supervisor+nginx部署服务的流程


以chat_service为例:

1,将项目拷贝至某一路径
2,更改supervisor配置文件:supervisor.conf(一般在/etc/目录下)
  1. 在/etc/supervisor.d/目录下新建chat_service.conf配置文件,如下:
    [program:chat_service]
    command=/usr/local/bin/gunicorn -b 0.0.0.0:8001 -w 40 -k gevent -t 300 chat_service.wsgi:application
    directory=/home/hongkeyuan/chat/bin/chat_system/chat_service
    autostart=true
    autorestart=true
    redirect_stderr=true
    stdout_logfile=/home/hongkeyuan/chat/log/chat_service.log
    stderr_logfile=/home/hongkeyuan/chat/log/chat_service.err
  2. 将配置文件包含到supervisor.conf中,在supervisor.conf中加入:
    [include]
    files = /etc/supervisor.d/*.conf
3,更改nginx配置文件,/etc/nginx/conf.d/目录下新建chat_service.conf配置文件,如下:
upstream chat_service {
        server localhost:8001;
}

server {
        listen 8000;
        location /static {
                alias /home/robot/chat/bin/chat_system/chat_service/static;
        }
        location / {
                proxy_pass_header Server;
                proxy_set_header Host $http_host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Scheme $scheme;
                proxy_pass http://chat_service;
        }
}

4,重新加载supervisor:supervisorctl -c /etc/supervisor.conf reload,此时配置的服务也将重启。
5,重新加载nginx:nginx -s reload。

tips:1,如果需要sudo权限,相关命令前需要加sudo。2,这里nginx主要起重定向作用,如果不需要重定向,则无需配置nginx。


你可能感兴趣的:(服务器,nginx,supervisor)