2017-06-16 2 views
1

J'ai une gouttelette d'océan numérique exécutant un projet django à travers gunicorn sur ubuntu. Un environnement de conda pour gérer les dépendances python.Activer l'environnement de conda dans le fichier de configuration par défaut

Je peux me connecter, exécuter source activate py35, cd dans le projet django et exécuter gunicorn django.wsgi -w 2 -t 360, et tout démarrer sans problème.

J'ai essayé de modifier le script arriviste qui a été créé par l'océan numérique lorsque la goutte a été créé pour:

description "Gunicorn daemon for Django project" 

start on (local-filesystems and net-device-up IFACE=eth0) 
stop on runlevel [!12345] 

# If the process quits unexpectadly trigger a respawn 
respawn limit 10 2 

setuid my_username 
setgid my_username 
chdir /home/my_username/django 


script 
    exec source activate py35 
    exec gunicorn django.wsgi -w 2 -t 360 
end script 

Cependant, les travailleurs ne parviennent pas à commencer, et dans les journaux les erreurs sont dues à la projet essayant de fonctionner sur l'installation standard de python, plutôt que sur l'environnement conda. Comment activer l'environnement conda dans un fichier de configuration upstart?

Répondre

0

utilisations arrivistes/bin/sh alors que la source doit être exécuté avec/bin/bash

essayez ceci:

script 
/bin/bash <<EOT 
    source activate py35 && gunicorn django.wsgi -w 2 -t 360 
EOT 
end script