
私はUbuntuサーバーにDjangoプロジェクトを展開しようとしています。私はこれに従っていますガイド。
しかし、このコマンドを実行すると問題が発生しsudo systemctl status gunicorn
、次のエラーが発生します。
● gunicorn.service - gunicorn daemon
Loaded: loaded (/etc/systemd/system/gunicorn.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2021-08-31 20:53:12 UTC; 6min ago
TriggeredBy: ● gunicorn.socket
Process: 1918 ExecStart=/home/houssem/project/env/bin/gunicorn --access-logfile - --workers 3 --bind unix:/run/gunicorn.sock config.wsgi:application (code=exited, >
Main PID: 1918 (code=exited, status=3)
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1932]: File "<frozen importlib._bootstrap>", line 991, in _find_and_load
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1932]: File "<frozen importlib._bootstrap>", line 973, in _find_and_load_unlocked
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1932]: ModuleNotFoundError: No module named 'django_extensions'
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1932]: [2021-08-31 20:53:12 +0000] [1932] [INFO] Worker exiting (pid: 1932)
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [WARNING] Worker with pid 1931 was terminated due to signal 15
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [WARNING] Worker with pid 1932 was terminated due to signal 15
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [INFO] Shutting down: Master
Aug 31 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [INFO] Reason: Worker failed to boot.
Aug 31 20:53:12 ubuntu-20-lts systemd[1]: gunicorn.service: Main process exited, code=exited, status=3/NOTIMPLEMENTED
Aug 31 20:53:12 ubuntu-20-lts systemd[1]: gunicorn.service: Failed with result 'exit-code'.
このコマンドを実行するとgunicorn config.wsgi:application --preload -b 0.0.0.0:8000
正常に動作し、IP アドレスを使用してサイトにアクセスできるようになります。
私のファイルgunicorn.service
と/etc/systemd/system/gunicorn.socket
ファイルは次のようになります:
# /etc/systemd/system/gunicorn.service
[Unit]
Description=gunicorn daemon
Requires=gunicorn.socket
After=network.target
[Service]
User=sammy
Group=www-data
WorkingDirectory=/home/sammy/myprojectdir
ExecStart=/home/sammy/myprojectdir/myprojectenv/bin/gunicorn \
--access-logfile - \
--workers 3 \
--bind unix:/run/gunicorn.sock \
myproject.wsgi:application
[Install]
WantedBy=multi-user.target
[Unit]
Description=gunicorn socket
[Socket]
ListenStream=/run/gunicorn.sock
[Install]
WantedBy=sockets.target
ガイド内でこれより前に説明されている gunicorn に関連するすべてのコマンドはsudo systemctl status gunicorn
期待どおりに動作し、ガイドと同じ出力を出力します。
解決策を探しましたが、この問題を解決する方法がわかりません。私は gunicorn の初心者です。
それで、誰かこれを直すのを手伝ってくれませんか?
提供された情報が不十分な場合は、さらに詳しい情報を提供できます。
編集
パッケージについては、requirements.txt ファイルから virtualenv にパッケージをすでにインストールしています。pip install -r requirements.txt
また、django-extension をグローバルにインストールしましたが、それでも同じエラーが発生します。