Назад | Перейти на главную страницу

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

горизонт-production.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?)

Нет.

Название программы не связано строго с названием приложения. Правильный путь - создать как горизонт-постановку, так и горизонт-производство, например:

[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

Так что у него будут оба варианта точки входа.

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