Могу ли я настроить запуск Celery Flower после закрытия оболочки Unix?
Я унаследовал корпоративный сервер и приложение, которое состоит из нескольких сценариев Python, HTML-файлов и сервисов Unix от ИТ-сотрудника, который недавно покинул мою компанию. Он не оставил абсолютно никакой документации, поэтому я изо всех сил стараюсь поддержать это приложение для моей рабочей группы - я не ИТ-специалист (хотя я могу читать / писать на python, html и некоторых других языках). Я крайне незнаком с серверами в целом и Unix в частности.
Из того, что я могу сказать, копаясь, наше приложение использует следующее:
- Nginx
- цирк / огнестрельное оружие
- RabbitMQ-сервер
- сельдерей
- цветок сельдерея
Наконец-то у меня запущено большинство этих сервисов, но я борюсь с цветком сельдерея. Я смог запустить Flower из моего соединения PuTTY SSH с помощью команды:
/miniconda3/envs/python2/bin/flower start
но, кажется, останавливается всякий раз, когда я отключаюсь (сервер:5555 больше не показывает веб-страницу монитора). Можно ли настроить его для работы в фоновом режиме, чтобы мне не приходилось держать мое соединение SSH открытым 24/7? Я видел в документации Flower, что есть режим персистентности, но я не уверен, что делает.
Спасибо за любые предложения!
1 ответ
Том, я полагаю, вы используете платформу Linux. Если это так, я предлагаю вам использовать screen (или даже tmux) для запуска Flower. Это будет поддерживать работу приложения в фоновом режиме, а также предоставит дополнительное преимущество, позволяющее вам подключиться к процессу, если вам нужно проверить вывод, остановить процесс и т. Д.
Для запуска приложения используйте screen -S Flower -d -m /miniconda3/envs/python2/bin/flower start
,
Чтобы увидеть, запущен ли процесс, используйте screen -ls
который перечислит процессы как;
There is a screen on:
17256.Flower (02/09/16 08:01:16) (Detached)
1 Socket in /var/run/screen/S-hooligan.
Чтобы подключиться к нему, используйте screen -r Flower
,
Если вы снова подключились к экрану, отключите ^a ^d
при условии, что escape-символ не был изменен по умолчанию. Чтобы увидеть полный список привязок клавиш, посмотрите страницу руководства, это довольно просто.
Вы можете также рассмотреть возможность добавления этой команды в системный crontab с помощью @REBOOT
директива, чтобы он запускался при загрузке системы.