运行 DigitalOcean 上的 Gunicorn 服务启动 Django 项目
Run Gunicorn service on DigitalOcean starting a Django project
我在 /etc/systemd/system/gunicorn.service
有以下 systemd
文件
[Unit]
Description=Gunicorn daemon for Django Project
Before=nginx.service
After=network.target
[Service]
WorkingDirectory=/home/serverapp
ExecStart=gunicorn --name=avesoft --bind unix:/home/serverapp/gunicorn.socket --config /etc/gunicorn.d/gunicorn.py WebApp.wsgi:application
Restart=always
SyslogIdentifier=gunicorn
User=root
Group=www-data
[Install]
WantedBy=multi-user.target
当我手动将目录更改为 /home/serverapp
和 运行 gunicorn --name=avesoft --bind unix:/home/serverapp/gunicorn.socket --config /etc/gunicorn.d/gunicorn.py WebApp.wsgi:application
时,一切正常,Nginx 通过 Gunicorn 连接到我的 Django 应用程序。
但是通过重新启动服务器,我得到了 Bad Gateway 错误,似乎 Gunicorn 还没有开始工作。我不明白我的服务文件不起作用的原因是什么。
所以我通过提供 gunicorn
的路径解决了这个问题:
[Unit]
Description=Gunicorn daemon for Django Project
Before=nginx.service
After=network.target
[Service]
WorkingDirectory=/home/serverapp
ExecStart=/usr/bin/gunicorn --name=avesoft --bind unix:/home/serverapp/gunicorn.socket --config /etc/gunicorn.d/gunicorn.py WebApp.wsgi:application
Restart=always
SyslogIdentifier=gunicorn
User=root
Group=www-data
[Install]
WantedBy=multi-user.target
我在 /etc/systemd/system/gunicorn.service
systemd
文件
[Unit]
Description=Gunicorn daemon for Django Project
Before=nginx.service
After=network.target
[Service]
WorkingDirectory=/home/serverapp
ExecStart=gunicorn --name=avesoft --bind unix:/home/serverapp/gunicorn.socket --config /etc/gunicorn.d/gunicorn.py WebApp.wsgi:application
Restart=always
SyslogIdentifier=gunicorn
User=root
Group=www-data
[Install]
WantedBy=multi-user.target
当我手动将目录更改为 /home/serverapp
和 运行 gunicorn --name=avesoft --bind unix:/home/serverapp/gunicorn.socket --config /etc/gunicorn.d/gunicorn.py WebApp.wsgi:application
时,一切正常,Nginx 通过 Gunicorn 连接到我的 Django 应用程序。
但是通过重新启动服务器,我得到了 Bad Gateway 错误,似乎 Gunicorn 还没有开始工作。我不明白我的服务文件不起作用的原因是什么。
所以我通过提供 gunicorn
的路径解决了这个问题:
[Unit]
Description=Gunicorn daemon for Django Project
Before=nginx.service
After=network.target
[Service]
WorkingDirectory=/home/serverapp
ExecStart=/usr/bin/gunicorn --name=avesoft --bind unix:/home/serverapp/gunicorn.socket --config /etc/gunicorn.d/gunicorn.py WebApp.wsgi:application
Restart=always
SyslogIdentifier=gunicorn
User=root
Group=www-data
[Install]
WantedBy=multi-user.target