无法启动gunicorn.service:找不到单位gunicorn.service。乌本托 18.04

sog*_*ogu 0 python django ubuntu gunicorn ubuntu-18.04

我正在关注如何在 Ubuntu 18.04 上使用 Postgres、Nginx 和 Gunicorn 设置 Django 指南。

\n\n

我创建了以下文件 .socket

\n\n

sudo nano /etc/systemd/system/gunicorn.socket

\n\n
[Unit]\nDescription=gunicorn socket\n\n[Socket]\nListenStream=/run/gunicorn.sock\n\n[Install]\nWantedBy=sockets.target\n
Run Code Online (Sandbox Code Playgroud)\n\n

我创建了以下文件 .service

\n\n

sudo nano /etc/systemd/system/gunicorn.service

\n\n

指南中的原始 RECOMENDED_FORMATTING-s

\n\n
[Unit]\nDescription=gunicorn daemon\nRequires=gunicorn.socket\nAfter=network.target\n\n\n[Service]\nUser=sammyRECOMENDED_FORMATTING\nGroup=www-data\nWorkingDirectory=/home/sammyRECOMENDED_FORMATTING/myprojectdirRECOMENDED_FORMATTING\nExecStart=/home/sammyRECOMENDED_FORMATTING/myprojectdirRECOMENDED_FORMATTING/myprojectenvRECOMENDED_FORMATTING/bin/gunicorn \\\n          --access-logfile - \\\n          --workers 3 \\\n          --bind unix:/run/gunicorn.sock \\\n          myprojectRECOMENDED_FORMATTING.wsgi:application\n\n[Install]\nWantedBy=multi-user.target\n
Run Code Online (Sandbox Code Playgroud)\n\n

我如何格式化自己的版本我的虚拟环境位于服务器上的项目文件夹之外

\n\n
[Unit]\nDescription=gunicorn daemon\nRequires=gunicorn.socket\nAfter=network.target\n\n[Service]\nUser=SERVER_USER\nGroup=www-data\nWorkingDirectory=/home/SERVER_USER/MAIN_PROJECT_FOLDER\nExecStart=/home/SERVER_USER/ven/bin/gunicorn \\\n          --access-logfile - \\\n          --workers 3 \\\n          --bind unix:/home/SERVER_USER/MAIN_PROJECT_FOLDER/MAINAPPLICATION_FOLDER.sock \\\n          MAINAPPLICATION_FOLDER.wsgi:application\n\n[Install]\nWantedBy=multi-user.target\n
Run Code Online (Sandbox Code Playgroud)\n\n

我也尝试过按照最初的建议保留这些

\n\n

--bind unix:/run/gunicorn.sock \\

\n\n

比我尝试执行以下代码

\n\n

sudo systemctl start gunicorn

\n\n

错误信息1

\n\n

Failed to start gunicorn.service: Unit gunicorn.service not found.

\n\n

我也尝试过 2

\n\n

sudo systemctl start gunicorn.socket

\n\n

错误信息2

\n\n
Failed to start gunicorn.socket: Unit gunicorn.socket is not loaded properly: Invalid argument.\nSee system logs and \'systemctl status gunicorn.socket\' for details.\n
Run Code Online (Sandbox Code Playgroud)\n\n

为了解决这个问题,我尝试过

\n\n\n

小智 5

我花了大约三个小时......Fxxx

不要这样做:

  sudo systemctl start gunicorn.socket
  sudo systemctl enable gunicorn.socket
Run Code Online (Sandbox Code Playgroud)

做这个:

  sudo systemctl enable gunicorn.socket
  sudo systemctl start gunicorn.socket
Run Code Online (Sandbox Code Playgroud)

和:

  sudo systemctl status gunicorn.socket
Run Code Online (Sandbox Code Playgroud)

现在工作正常了