Не удалось выполнить команду: Нет такого файла или каталога (Gunicorn) (Django)
Сначала я создал сокет с именем 'receiver.socket'
(nvenv) papli@sender:/datadrive/receiver/GisServer$ cat cat /etc/systemd/system/receiver.socket
cat: cat: No such file or directory
[Unit]
Description=receiver socket
[Socket]
ListenStream=/run/receiver.sock
[Install]
WantedBy=sockets.target
Затем я создал служебный файл с тем же именем 'receiver.service'
(nvenv) papli@sender:/datadrive/receiver/GisServer$ cat /etc/systemd/system/receiver.service
[Unit]
Description=gunicorn daemon
Requires=receiver.socket
After=network.target
[Service]
User=papli
Group=papli
RuntimeDirectory=gunicorn
WorkingDirectory=/datadrive/receiver/GisServer
Environment="PATH=/datadrive/receiver/GisServer/nvenv/bin"
ExecStart=/datadrive/receiver/GisServer/nvenv/bin/gunicorn --access-logfile /datadrive/sender/log/gunicorn.log --workers 3 --bind unix:/run/receiver.sock GisServer.wsgi:application
[Install]
WantedBy=multi-user.target
После этого
sudo systemctl enable receiver
sudo systemctl start receiver
Ошибка, которую я получаю
(nvenv) papli@sender:/datadrive/receiver/GisServer$ sudo systemctl status receiver
● receiver.service - gunicorn daemon
Loaded: loaded (/etc/systemd/system/receiver.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sat 2022-03-19 07:14:09 UTC; 3min 38s ago
Main PID: 6029 (code=exited, status=203/EXEC)
Mar 19 07:14:09 sender systemd[1]: Started gunicorn daemon.
Mar 19 07:14:09 sender systemd[6029]: receiver.service: Failed to execute command: No such file or directory
Mar 19 07:14:09 sender systemd[6029]: receiver.service: Failed at step EXEC spawning /datadrive/receiver/GisServer/nvenv/bin/gunicorn: No
Mar 19 07:14:09 sender systemd[1]: receiver.service: Main process exited, code=exited, status=203/EXEC
Mar 19 07:14:09 sender systemd[1]: receiver.service: Failed with result 'exit-code'.
Шаги по устранению неполадок, которые я выполнил
- Checked sock file is created.
(nvenv) papli@sender:/datadrive/receiver/GisServer$ ls /run/receiver.sock
/run/receiver.sock
- Inside nvenv/bin gunicorn file is present and their permissions are adequate
(nvenv) papli@sender:/datadrive/receiver/GisServer$ ls -la nvenv/bin/gunicorn
-rwxrwxrwx 1 papli papli 258 Feb 25 08:25 nvenv/bin/gunicorn
- Checked the binding
(nvenv) papli@sender:/datadrive/receiver/GisServer$ gunicorn --bind 0.0.0.0:8000 GisServer.wsgi
[2022-03-19 07:29:22 +0000] [7456] [INFO] Starting gunicorn 20.0.4
[2022-03-19 07:29:22 +0000] [7456] [INFO] Listening at: http://0.0.0.0:8000 (7456)
[2022-03-19 07:29:22 +0000] [7456] [INFO] Using worker: sync
[2022-03-19 07:29:22 +0000] [7459] [INFO] Booting worker with pid: 7459
static dir: /datadrive/receiver/GisServer/static
^C[2022-03-19 07:29:24 +0000] [7456] [INFO] Handling signal: int
[2022-03-19 07:29:25 +0000] [7456] [INFO] Shutting down: Master
Может кто-нибудь подсказать мне, в чем я допустил ошибку?
Спасибо