spacepaste

  1.  
  2. pip install gunicorn
  3. vim bin/gunicorn_start
  4. #!/bin/bash
  5. NAME="urban_train"
  6. DIR=/home/urban/urban-train
  7. USER=urban
  8. GROUP=urban
  9. WORKERS=3
  10. BIND=unix:/home/urban/run/gunicorn.sock
  11. DJANGO_SETTINGS_MODULE=urban_train.settings
  12. DJANGO_WSGI_MODULE=urban_train.wsgi
  13. LOG_LEVEL=error
  14. cd $DIR
  15. source ../bin/activate
  16. export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE
  17. export PYTHONPATH=$DIR:$PYTHONPATH
  18. exec ../bin/gunicorn ${DJANGO_WSGI_MODULE}:application \
  19. --name $NAME \
  20. --workers $WORKERS \
  21. --user=$USER \
  22. --group=$GROUP \
  23. --bind=$BIND \
  24. --log-level=$LOG_LEVEL \
  25. --log-file=-
  26. :x
  27. chmod u+x bin/gunicorn_start
  28. mkdir run
  29. mkdir logs
  30. touch logs/gunicorn-error.log
  31. sudo vim /etc/supervisor/conf.d/urban-train.conf
  32. [program:urban-train]
  33. command=/home/urban/bin/gunicorn_start
  34. user=urban
  35. autostart=true
  36. autorestart=true
  37. redirect_stderr=true
  38. stdout_logfile=/home/urban/logs/gunicorn-error.log
  39. :x
  40. sudo supervisorctl reread
  41. sudo supervisorctl update
  42. sudo supervisorctl status urban-train
  43. FATAL Exited too quickly (process log may have details)
  44. LOGS:
  45. couldn't exec /home/urban/bin/gunicorn_start: ENOEXEC
  46. supervisor: child process was not spawned
  47.