【问题标题】:How to run Dash App in background/offline [duplicate]如何在后台/离线运行 Dash App [重复]
【发布时间】:2021-10-31 09:58:36
【问题描述】:

我是 dash 应用程序开发的新手,并创建了一个在 linux 服务器上运行的应用程序。只有当我触发并在线时,它才对我们内网中的所有用户可用。一旦我注销它就无法访问。即使我处于离线状态,如何安排应用程序持续运行。任何回复将不胜感激。

目前它使用以下命令提供服务

python app.py

由于安全限制,我无法在 Heroku 中部署。 Docker 也无法使用。任何其他选择将不胜感激。

问候, 苏迪尔

【问题讨论】:

  • 您是如何在服务器上启动应用程序的?您是否通过 SSH 连接到服务器并像 python app.py 一样运行它?
  • 是的,目前我正在作为 python app.py 运行
  • 请添加有关您如何服务(运行)应用程序等的更多详细信息。还可以尝试搜索有关如何为 python 应用程序提供服务的教程,那里有很多。
  • 由于安全限制,我无法在 Heroku 中部署。 Docker 也无法使用。任何其他选择将不胜感激。
  • 可以运行烧瓶代码的服务器应该有特殊的方法来启动它。他们中的一些人可能会使用Gunicorn 来运行它。他们还可以使用supervisord 来启动应用程序并控制它是否仍在运行,如果它崩溃则重新启动它。方法python app.py只是在本地服务器上测试代码。

标签: python flask plotly plotly-dash


【解决方案1】:

从这个描述,我猜你

  1. SSH 进入服务器
  2. 运行python app.py
  3. 此时,应用程序可用
  4. 从 SSH 连接注销(例如exit 命令)
  5. 此时,该应用不再可用

如果是这样,这是因为您在 SSH 会话期间运行的命令将在您从会话中注销时终止。 注销后有多种方法可以让您的应用程序继续运行。例如,

  • 运行nohub python app.py &
  • 在 tmux 窗口中运行 tmux 并运行 python app.py。然后Ctrl+b+d关闭tmux窗口。

无论哪种方式,应用程序都会在您从 SSH 连接注销后继续运行。如果我对您的情况的猜测是错误的,请详细说明您的情况。例如,告诉我们您运行的一系列命令以及它们会发生什么。

特别是,“离线”一词在此上下文中并不明确。如果你完全离线,甚至连内网都没有连接,那么你就没有机会使用在服务器上运行的应用程序。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多