python - celery pdb 在 docker 容器内运行,监听端口发生变化

标签 python celery docker pdb

寻求有关如何在端口转发时在 docker 容器中运行 celery pdb 的建议,以便我可以从外部世界访问。

我正在关注 http://celery.readthedocs.org/en/latest/tutorials/debugging.html 上的指南

我面临的问题是,即使我告诉容器。

-e CELERY_RDB_HOST='0.0.0.0' -e CELERY_RDB_PORT='6900' -p 6900:6900。

并到达应用程序中的断点,实际打开的端口不是我要求的,因此我的端口转发不再有效......例如。相反,端口 6902 被打开,无论我要求端口是什么,它都会再次变为我所要求的。

我知道它会从它认为“可用”的 100 个端口列表中进行选择,但不确定如何解决这个问题。欢迎任何建议。

谢谢!

最佳答案

您可以通过指定一系列端口来运行您的容器(参见 http://docs.docker.com/reference/run/#expose-incoming-ports):

docker run -d -e CELERY_RDB_HOST='0.0.0.0' -p 6900-7000:6900-7000 celery

之后,当你遇到断点时,你只需要 telnet 进入它:

telnet localhost 6902

关于python - celery pdb 在 docker 容器内运行,监听端口发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25584006/

相关文章:

mysql - Docker + Mysql 连接错误 : Unknown MySQL server host 'db'

python - 在 Pandas 中创建 DataFrame 时填充默认 0

django - Django 和 Celery 示例 : Periodic Tasks

python - 将 celery worker 作为守护进程运行时不要创建 pidfile 和 logfile

docker - Marathon 软件包给 DC/OS 带来了哪些好处?

docker - 容器未连接到网络lando_bridge_network

Python复杂字典排序

python - python 如何在乘法后对 float32 数字进行舍入?

python - 如何获取列中的数据,其名称保存在python的另一列中

python - 给celery添加动态任务