2016-07-06 2 views
1

Essayer de déployer gunicorn démarrage automatique sur Amazon AWS (pour référence, suite avec TDD pour Python here).Amazon AWS - Gunicorn démarre au démarrage

Site déploie bien avec gunicorn lors de l'exécution:

../virtualenv/bin/gunicorn --bind \ unix:/tmp/mysite.com.socket.myapp.wsgi:application 

Mais en essayant de mettre en œuvre gunicorn commencer par démarrage, ie en lançant: sudo commencer gunicorn-mysite.com, obtenir '502 Passerelle (nginx) '.

Quelques choses:

  1. Ecoulage Amazon EC2 AWS
  2. version gunicorn = 1,8

/etc/init/gunicorn-mysite.com.conf

description "Gunicorn server for mysite.com" 

start on net-device-up 

stop on shutdown 

respawn 

setuid ubuntu 

chdir /home/ubuntu/sites/mysite.com/source 

exec ../virtualenv/bin/gunicorn \ 
--bind unix:/tmp/mysite.com.socket \ 
myapp.wsgi:application 

Les journaux sont les suivants:

/var/log/arriviste **

usage: gunicorn [OPTIONS][APP_MODULE] 
gunicorn: error: No application module specified 

**

/var/log/nginx

...[error] 6282#0 : * connect() to unix:/tmp/mysite.com.socket failed (111: Connection refused) while connecting to upstream client 10.10.100.100, server: mysite.com, request: "GET/HTTP/1.1", upstream: "http://unix:/tmp/mysite.com.socket:/", host: "mysite.com"

Je suis courir gunicorn avec le c suivant ommands:

(virtualenv)[email protected]/source$ sudo service nginx restart 
(virtualenv)[email protected]/source$ sudo starg gunicorn-mysite.com 

Je ne sais pas pourquoi je reçois une mauvaise passerelle - toute aide grandement appréciée!

Répondre

0

Dans votre code:

exec ../virtualenv/bin/gunicorn \ 
--bind unix:/tmp/mysite.com.socket \ 
myapp.wsgi:application 

Remplacer myapp.wsgi avec le nom de votre fichier python d'entrée, remplacez application avec le nom défini dans votre fichier python.

Par exemple, s'il y a un run.py dans /home/ubuntu/sites/mysite.com/source comme ci-dessous:

from src import app 

if __name__ == '__main__': 
    app.run() 

Vous pouvez modifier la configuration comme suit:

exec ../virtualenv/bin/gunicorn \ 
--bind unix:/tmp/mysite.com.socket \ 
run:app