Trước hết, tôi có nhiều thiết lập trường hợp Django và chạy như thế này.Gunicorn và Django với Upstart và Nginx
Trong mỗi dự án tôi có một kịch bản shell script.sh bắt đầu gunicorn v.v .:
#!/bin/bash
set -e
LOGFILE=/var/log/gunicorn/app_name.log
LOGDIR=$(dirname $LOGFILE)
NUM_WORKERS=3
# user/group to run as
USER=root
GROUP=root
PORT=8060
IP=127.0.0.1
cd /var/www/webapps/app_name
source ../bin/activate
test -d $LOGDIR || mkdir -p $LOGDIR
exec /var/www/webapps/bin/gunicorn_django -b $IP:$PORT -w $NUM_WORKERS \
--user=$USER --group=$GROUP --log-level=debug --log-file=$LOGFILE 2>>$LOGFILE
Khi chạy script này từ dòng lệnh với bash script.sh, trang web hoạt động hoàn hảo, vì vậy Nginx được thiết lập đúng.
Ngay sau khi tôi sử dụng mới nhất với service app_name bắt đầu ứng dụng bắt đầu và sau đó chỉ dừng lại. Nó thậm chí không ghi vào tệp nhật ký.
Đây là app_name.conf tập tin trong /etc/init/app_name.conf:
description "Test Django instance"
start on runlevel [2345]
stop on runlevel [06]
respawn
respawn limit 10 5
exec /var/www/webapps/app_name/script.sh
Vì vậy, vấn đề ở đây là gì? Nguyên nhân chạy từ các công việc dòng lệnh, nhưng làm việc khởi động máng thì không. Và tôi không biết nơi để xem whats sai?
Điều này thật đáng thất vọng, chắc chắn là im mù hay gì đó và không thấy vấn đề! – Harry
Ngay cả khi chạy dòng lệnh fomr này gunicorn_django -b $ IP: $ PORT -w $ NUM_WORKERS \ --user = $ USER --group = $ GROUP --log-level = debug --log-file = $ LOGFILE 2 >> $ LOGFILE mọi thứ hoạt động. Nó phải là mới nổi là vấn đề? – Harry