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

Can I configure Celery Flower to run after I close my Unix shell?

我从一名最近离开公司的 IT 员工那里继承了一个公司服务器和应用程序,其中包含多个 python 脚本、html 文件和 Unix 服务。他绝对没有留下任何文档,所以我正在努力为我的工作组支持这个应用程序——我不是 IT 专业人士(尽管我可以 read/write python、html,并且很少有其他语言)。我对服务器特别是 Unix 非常不熟悉。

据我了解,我们的应用程序使用以下内容:

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

/miniconda3/envs/python2/bin/flower start

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

感谢任何建议!

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

要启动应用程序,请使用 screen -S Flower -d -m /miniconda3/envs/python2/bin/flower start

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

您还可以考虑使用 @REBOOT 指令将此命令添加到系统 crontab,以便它在系统启动时启动。