关闭Unix shell后,我可以配置Celery Flower运行吗?

时间:2016-08-31 21:07:13

标签: unix ssh celery flower

我继承了公司服务器&应用程序由最近离开我公司的IT员工的几个python脚本,html文件和Unix服务组成。他完全没有留下任何文档,所以我很难为我的工作组支持这个应用程序 - 我不是IT专业人员(虽然我可以读/写python,html和其他一些语言)。我对一般的服务器和Unix都非常不熟悉。

从我所知道的,我们的应用程序使用以下内容:

  • nginx的
  • circus / gunicorn
  • 的RabbitMQ服务器
  • 芹菜
  • 芹菜花

我终于得到了大部分这些服务,但我正在与Celery Flower挣扎。我已经能够使用以下命令从我的PuTTY SSH连接启动Flower:

/miniconda3/envs/python2/bin/flower start

但是每当我断开连接时它似乎停止(服务器:5555不再显示监视器网页)。是否可以将其配置为在后台运行,这样我就不必每周7天,每天24小时都保持SSH连接?我在Flower文档中看到有持久性模式,但我不确定是什么。

感谢您的任何建议!

1 个答案:

答案 0 :(得分:2)

汤姆, 我假设您使用的是Linux平台。如果是这种情况,我建议您使用屏幕(甚至tmux)来运行Flower。它将使应用程序在后台运行,并提供额外的好处,允许您在需要检查输出,停止进程等时连接回进程。

要启动应用程序,请使用pg_terminate_backend()

要查看进程是否仍在运行,请使用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的连接,假设转义字符未从默认值更改。要查看关键绑定的完整列表,请查看man page,它非常直接。

您也可以考虑使用^a ^d指令将此命令添加到系统crontab,以便在系统启动时启动。