Puede establecer las variables de entorno por proceso en la configuración supervisord en la sección [program:x
], estos serán incluídos en el proceso cuando se inicia:
[program:yourprocess]
# ... other settings
environment =
MYSQL_URL=mysql://,
OTHER_VAR="some other value"
Tenga en cuenta que es necesario utilizar una coma entre cada variable. Usé nuevas líneas en el ejemplo anterior también, esas son opcionales. Si tiene espacios en los valores de su entorno, debe incluir el valor entre comillas.
También puede establecer variables de entorno para todos los procesos en la sección [supervisord]
, utilizando el mismo formato.
Por último, cualquier variable de entorno que se establezca al iniciar supervisord se pasa a los procesos gestionados por supervisord también. Vea el documentation section on environment variables para más detalles.
tenga en cuenta que si cambia las variables de entorno configuradas en el archivo de configuración, tendrá que indicar a supervisord para recargar la configuración y reiniciar los subprocesos para ellos para recoger estos cambios:
supervisorctl update
supervisorctl restart yourprocess
Si Sin embargo cambia las variables de entorno exterior de supervisord, tendrá que cerrar supervisord todos juntos para recoger estos:
supervisorctl shutdown
supervisord
en contra del propósito si también almacenar el archivo de configuración en el supervisor de control de versiones – Dustin
@Dustin es r Ocho. ¿Hay alguna forma de evitar esto? Tal vez algún tipo de archivo de inclusión? – surjikal
@surjikal: genera el archivo de configuración con una herramienta como buildout. –