Tôi đang cố triển khai dự án Django trên máy chủ Ubuntu. tôi đang làm theo cái này hướng dẫn.
Nhưng tôi đang gặp sự cố khi chạy lệnh này sudo systemctl status gunicorn
, tôi gặp lỗi này:
â gunicorn.service - daemon gunicorn
Đã tải: đã tải (/etc/systemd/system/gunicorn.service; đã bật; giá trị đặt sẵn của nhà cung cấp: đã bật)
Hoạt động: không thành công (Kết quả: mã thoát) kể từ Thứ Ba 2021-08-31 20:53:12 UTC; 6 phút trước
Được kích hoạt bởi: â gunicorn.socket
Quá trình: 1918 ExecStart=/home/houssem/project/env/bin/gunicorn --access-logfile - --workers 3 --bind unix:/run/gunicorn.sock config.wsgi:application (code=exited, >
PID chính: 1918 (mã=đã thoát, trạng thái=3)
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1932]: Tệp "<frozen importlib._bootstrap>", dòng 991, trong _find_and_load
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1932]: Tệp "<frozen importlib._bootstrap>", dòng 973, trong _find_and_load_unlocked
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1932]: ModuleNotFoundError: Không có mô-đun nào có tên 'django_extensions'
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1932]: [2021-08-31 20:53:12 +0000] [1932] [INFO] Công nhân đang thoát (pid: 1932)
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [CẢNH BÁO] Công nhân với pid 1931 đã bị chấm dứt do tín hiệu 15
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [CẢNH BÁO] Công nhân với pid 1932 đã bị chấm dứt do tín hiệu 15
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [INFO] Shutdown: Master
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts gunicorn[1918]: [2021-08-31 20:53:12 +0000] [1918] [INFO] Lý do: Công nhân không khởi động được.
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts systemd[1]: gunicorn.service: Quá trình chính đã thoát, mã=đã thoát, trạng thái=3/KHÔNG ĐƯỢC THỰC HIỆN
Ngày 31 tháng 8 20:53:12 ubuntu-20-lts systemd[1]: gunicorn.service: Không thành công với kết quả là 'mã thoát'.
Khi tôi chạy lệnh này gunicorn config.wsgi:application --preload -b 0.0.0.0:8000
nó hoạt động tốt và tôi có thể truy cập trang web bằng địa chỉ IP.
Của tôi gunicorn.service
và /etc/systemd/system/gunicorn.socket
tập tin trông như thế này:
# /etc/systemd/system/gunicorn.service
[Đơn vị]
Mô tả = daemon gunicorn
Yêu cầu = gunicorn.socket
Sau=mạng.mục tiêu
[Dịch vụ]
Người dùng = sammy
Nhóm=www-dữ liệu
WorkingDirectory=/home/sammy/myprojectdir
ExecStart=/home/sammy/myprojectdir/myprojectenv/bin/gunicorn \
--access-logfile - \
--worker 3 \
--bind unix:/run/gunicorn.sock \
myproject.wsgi:ứng dụng
[Cài đặt]
WantedBy=multi-user.target
[Đơn vị]
Mô tả = ổ cắm gunicorn
[Ổ cắm]
ListenStream=/run/gunicorn.sock
[Cài đặt]
WantedBy=sockets.target
Tất cả các lệnh được đề cập (trong hướng dẫn) liên quan đến gunicorn trước lệnh này sudo systemctl status gunicorn
hoạt động như mong đợi và in đầu ra giống như trong hướng dẫn.
Tôi đã tìm kiếm các giải pháp nhưng tôi không thể tìm ra cách khắc phục sự cố này, tôi chưa quen với gunicorn.
Vì vậy, xin vui lòng bất cứ ai có thể giúp tôi khắc phục điều này?
Tôi có thể cung cấp thêm chi tiết nếu thông tin được cung cấp là không đủ.
CHỈNH SỬA
Về các gói, tôi đã cài đặt các gói trong virtualenv từ tệp tests.txt: cài đặt pip -r tests.txt
. Ngoài ra, tôi đã cài đặt tiện ích mở rộng django trên toàn cầu nhưng vẫn gặp lỗi tương tự.