Не удалось запустить gunicorn.service: Единица gunicorn.service не найденный. Ubunto 18.04

Я следую за этим, Как Настроить Django с Пост-ГРЭС, Nginx и Gunicorn на руководстве Ubuntu 18.04.

Я создал следующий файл .socket

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

[Unit]
Description=gunicorn socket

[Socket]
ListenStream=/run/gunicorn.sock

[Install]
WantedBy=sockets.target

Я создал следующий файл .service

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

Исходный RECOMENDED_FORMATTING-s в руководстве

[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target


[Service]
User=sammyRECOMENDED_FORMATTING
Group=www-data
WorkingDirectory=/home/sammyRECOMENDED_FORMATTING/myprojectdirRECOMENDED_FORMATTING
ExecStart=/home/sammyRECOMENDED_FORMATTING/myprojectdirRECOMENDED_FORMATTING/myprojectenvRECOMENDED_FORMATTING/bin/gunicorn \
          --access-logfile - \
          --workers 3 \
          --bind unix:/run/gunicorn.sock \
          myprojectRECOMENDED_FORMATTING.wsgi:application

[Install]
WantedBy=multi-user.target

Как я отформатировал свою собственную версию, у меня была своя виртуальная среда за пределами папки проекта на сервере

[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target

[Service]
User=SERVER_USER
Group=www-data
WorkingDirectory=/home/SERVER_USER/MAIN_PROJECT_FOLDER
ExecStart=/home/SERVER_USER/ven/bin/gunicorn \
          --access-logfile - \
          --workers 3 \
          --bind unix:/home/SERVER_USER/MAIN_PROJECT_FOLDER/MAINAPPLICATION_FOLDER.sock \
          MAINAPPLICATION_FOLDER.wsgi:application

[Install]
WantedBy=multi-user.target

Я также попытался оставить их, как первоначально рекомендуется

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

Чем я попытался выполнить следующий код

sudo systemctl start gunicorn

сообщение об ошибке 1

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

и я также попробовал 2

sudo systemctl start gunicorn.socket

Сообщение об ошибке 2

Failed to start gunicorn.socket: Unit gunicorn.socket is not loaded properly: Invalid argument.
See system logs and 'systemctl status gunicorn.socket' for details.

Для решения этого я попробовал

0
задан 25 March 2020 в 00:23

1 ответ

У Вас есть раздел [Install] в Вашем сервисе, что означает, что необходимо выполнить команду sudo systemctl enable gunicorn.service запустить сервис на системный запуск.

После того как Вы выполняете команду, символьная ссылка на этот файл будет создана в каталоге /etc/systemd/system/multi-user.target.wants/.

Обратите внимание, что также необходимо создать названный файл сокета gunicorn.socket и потребность включить то же. После того как Вы включаете, можно активировать сокет путем выполнения команды sudo systemctl start gunicorn.socket. Вы не должны выполнять сервис, поскольку systemd выяснит зависимость.

Можно проверить состояние сервиса с systemctl status gunicorn.service.

1
ответ дан 7 April 2020 в 23:28

Другие вопросы по тегам:

Похожие вопросы: