【发布时间】:2016-07-22 11:25:41
【问题描述】:
我正在尝试让一个非常简单的 Python 程序作为 CloudFoundry 应用程序在 IBM Bluemix 上作为后台进程运行。
我已将其放入 Github repo。 有一个单行的 req 文件,因为我发现它比 setup.py 更容易,并且 python buildpack 需要它来运行。
我的完整用例是我有一个用 Django 编写的 API,我需要一个 MQTT 客户端,该客户端将在它旁边运行以从代理收集数据(我认为是 Watson IOT)。
我尝试在同一个 CF 应用程序中运行这两个应用程序,其中包含如下所示的 2 行 Procfile:
web: gunicorn -e DJANGO_SETTINGS_MODULE=conf.dev conf.wsgi --workers 2
worker: python time.py
但是第二个过程被忽略了。
我也尝试过当前配置,但 Procfile 只包含第二行,它告诉我找不到启动命令。
现在,使用 Manifest 中的启动命令和 true 中的 no-route,要么它没有通过运行状况检查,要么它只是在启动步骤等待,直到我收到此错误:
2016-07-22T13:10:36.671+0200
[LGR/null]
err
WebsocketListener.Start: Error connecting to a doppler server
2016-07-22T13:10:36.677+0200
[LGR/null]
err
proxy: error connecting to 159.8.128.238:8081: dial tcp 159.8.128.238:8081: getsockopt: connection refused
那么,有没有办法在 Bluemix 中运行后台任务,如果可能的话作为独立应用程序(更容易扩展和更新)?
编辑:现在它可以工作了,虽然我没有改变任何东西,除了一个错字来格式化我的 Python 脚本中的一个字符串,虽然应用程序几乎每分钟都会崩溃
Removing crash for app with id 3978a475-4dc6-495f-9662-a6fd562dc28a
【问题讨论】:
标签: python ibm-cloud cloud-foundry