Ich versuche, meinen Server mit Gunicorn und Supervisor zum Laufen zu bringen. Managed es upp mit diesem Befehl zu erhalten:Gunicorn und Supervisor für Django-Server einrichten
$ gunicorn project.wsgi:application --bind 192.168.1.130:8000
Danach ich eine gunicorn_init.bash Datei gemacht. Ich habe den Code von mehreren Tutorials bekommen. Also denke mal, es ist eine übliche Art, Gunicorn und Supervisor einzurichten. Der Code sieht wie folgt aus:
#!/bin/bash
NAME="project" # Name of the application
DJANGODIR=/home/username/projects/project # Django project directory
SOCKFILE=/home/username/.venvs/project/run/gunicorn.sock # We will communicate using this unix socket
USER=username # the user to run as
GROUP=username # the group to run as
NUM_WORKERS=1 # how many worker processes shoul Gunicorn spawn
DJANGO_SETTINGS_MODULE=project.settings.production # which settings file should Django use
DJANGO_WSGI_MODULE=project.wsgi # WSGI module name
echo "Starting $NAME as `whoami`"
# Activate the virtual environment
cd $DJANGODIR
source /home/username/.venvs/project/bin/activate
export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
export PYTHONPATH=$DJANGODIR:$PYTHONPATH
# Create the run directory if it doesn't exsist
RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR
# Start yout Django Unicorn
# Programs meant to be run under supervisor should not daemonize themselves (do not use daemon)
exec gunicorn ${DJANGO_WSGI_UNICORN}:application \
--name $NAME \
--workers $NUM_WORKERS \
--user=$USER --group=$GROUP \
--bind=unix:$SOCKFILE \
--log-level=debug \
--log-file=-
Das gibt mir einzige Ausnahme ist Arbeitsprozess wie folgt aus:
[2017-10-15 12:35:37 +0200] [30218] [INFO] Starting gunicorn 19.7.1
[2017-10-15 12:35:37 +0200] [30218] [DEBUG] Arbiter booted
[2017-10-15 12:35:37 +0200] [30218] [INFO] Listening at: unix:/home/username/.venvs/project/run/gunicorn.sock (30218)
[2017-10-15 12:35:37 +0200] [30218] [INFO] Using worker: sync
[2017-10-15 12:35:37 +0200] [30223] [INFO] Booting worker with pid: 30223
[2017-10-15 12:35:37 +0200] [30223] [ERROR] Exception in worker process
Traceback (most recent call last):
File "/home/username/.venvs/project/lib/python3.5/site-packages/gunicorn/arbiter.py", line 578, in spawn_worker
worker.init_process()
File "/home/username/.venvs/project/lib/python3.5/site-packages/gunicorn/workers/base.py", line 126, in init_process
self.load_wsgi()
File "/home/username/.venvs/project/lib/python3.5/site-packages/gunicorn/workers/base.py", line 135, in load_wsgi
self.wsgi = self.app.wsgi()
File "/home/username/.venvs/project/lib/python3.5/site-packages/gunicorn/app/base.py", line 67, in wsgi
self.callable = self.load()
File "/home/username/.venvs/project/lib/python3.5/site-packages/gunicorn/app/wsgiapp.py", line 65, in load
return self.load_wsgiapp()
File "/home/username/.venvs/project/lib/python3.5/site-packages/gunicorn/app/wsgiapp.py", line 52, in load_wsgiapp
return util.import_app(self.app_uri)
File "/home/username/.venvs/project/lib/python3.5/site-packages/gunicorn/util.py", line 352, in import_app
__import__(module)
ValueError: Empty module name
[2017-10-15 12:35:37 +0200] [30223] [INFO] Worker exiting (pid: 30223)
[2017-10-15 12:35:37 +0200] [30218] [INFO] Shutting down: Master
[2017-10-15 12:35:37 +0200] [30218] [INFO] Reason: Worker failed to boot.
Ich las und sah Tutorials. In Docs eingeloggt und versucht herauszufinden, warum es beim Aufruf der Gunicorn-Bash-Datei nicht funktioniert.
Alle Hinweise in die richtige Richtung werden jetzt sehr geschätzt. Ich bin seit einiger Zeit festgefahren.
Die Anzahl der Male, die ich durch den Code gelesen habe und dies nicht gesehen habe. Danke Daniel aka Adler Auge – sumpen
Vergessen Sie nicht, die Antwort zu akzeptieren, als ein Hinweis für zukünftige Sucher, dass es Ihr Problem gelöst hat. –