sistema jerarquía jerarquia directorios archivos foreman procfile

foreman - jerarquia - jerarquía de archivos



Procfile los procesos de inicio en su propio directorio de trabajo. (3)

Tengo este simple Procfile

web: myapp

myapp está en la ruta, pero el directorio de inicio de procesos debería ser ./directory/. ¿Cómo puedo especificar en el archivo de proceso dónde se debe iniciar el proceso?

https://github.com/ddollar/foreman/pull/101 no ayuda porque asume que este directorio de trabajo debe ser el mismo para cada proceso especificado por Procfile


La cáscara es la respuesta. Es tan simple como

web: sh -c ''cd ./directory/ && exec appname''


Puede encadenar un conjunto de comandos de shell juntos. Con la versión actual de Foreman, no es necesario envolver esto en un comando de shell como en la respuesta de @JohnDoe.

web: cd server_dir && start web_service clk: cd clock_tower && start timers

Estos iniciarían los procesos necesarios desde sus respectivas carpetas y los rastrearían de forma independiente.


Una respuesta a "¿Cómo puedo especificar en el archivo de proceso donde se debe iniciar el proceso?"

Puede decirle a Foreman dónde está el directorio raíz de la aplicación, lo que significa que no tiene que ser el mismo lugar que el archivo Procfile.

Puede iniciar Foreman con la opción -d (puede que tenga que usar -f para el archivo Procfile también).

$ foreman start -d ./directory

http://ddollar.github.io/foreman/