supervisord: Можно ли запустить две программы с одинаковым именем, но по разным командным путям?

supervisord: Можно ли запустить две программы с одинаковым именем, но по разным командным путям?

Когда я создаю два файла:

горизонт-staging.conf

[program:horizon]
process_name=%(program_name)s
command=php /var/www/staging/current/artisan horizon
autostart=true
autorestart=true
user=forge
redirect_stderr=true

горизонт-производство.conf

[program:horizon]
process_name=%(program_name)s
command=php /var/www/production/current/artisan horizon
autostart=true
autorestart=true
user=forge
redirect_stderr=true

и запустите команду sudo supervisorctl start horizon. Запустит ли она обе программы? (Побочный вопрос, могу ли я поместить это также в один файл conf?)

решение1

Нет.

Имя программы не связано строго с именем приложения. Правильным путем было бы создать и horizon-staging, и horizon-production, например:

[program:horizon-staging]
process_name=horizon
command=php /var/www/staging/current/artisan horizon
autostart=true
autorestart=true
user=forge
redirect_stderr=true

[program:horizon-production]
process_name=horizon
command=php /var/www/production/current/artisan horizon
autostart=true
autorestart=true
user=forge
redirect_stderr=true

Таким образом, будут доступны оба варианта точек входа.

И да, вы можете объявить две разные программы внутри одного и того же conf.

Связанный контент