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

Как я могу перезапустить службу, предназначенную для работы под контролем

Я написал службу, предназначенную для работы под контролем daemontools.

Поскольку сценарий запуска обновляет репозиторий исходного кода:

   git pull
   pod_server  # serve up docs on source code via the web

Я хочу, чтобы сценарий перезапускался каждые 5 минут.

В справочная страница для svc говорит, что он применяет все параметры к службе, поэтому я подумал, что это сработает в cron:

* / 5 * * * * svc -du и т. Д. / Pod_server

но, похоже, это не обновляет репозиторий исходного кода с новыми нажатиями

Я давно не использовал daemontools, но попробуйте разделить -d и -u (svc -d ... ; sleep 5 ; svc -u ...).

Также обратите внимание, что если демон вашей службы не соблюдает TERM сигнал (что -d отправляет по умолчанию) вы можете попробовать svc -k вместо этого отправить KILL. Если я правильно помню, демон supervise увидит, что служба не работает, и перезапустит ее самостоятельно.