debugging 如何在使用python,flask,docker和docker compose时使用celery rdb?

6ie5vjzr  于 2023-10-24  发布在  Python
关注(0)|答案(1)|浏览(172)

我在我的项目中使用python,flask,celery,docker和docker compose,并希望使用celery rdb调试我的任务。我无法使用telnet从本地机器连接到celery容器到docker容器。

h7appiyu

h7appiyu1#

我找不到一个简单的方法来做到这一点。最后我结束了以下内容:
1.将telnet安装到celery容器中(添加以下Dockerfile)

# install system dependencies
RUN apt-get update && apt-get install -y telnet

1.触发celery任务。您将看到日志输出如下:远程日志记录器:6900:准备连接:telnet 127.0.0.1 6900
1.在另一个航站楼的celery 集装箱里

docker compose exec my_celery bash

1.运行telnet命令

root@fc4dcaa378xy:/usr/src/app# telnet 0.0.0.0 6900
    Trying 0.0.0.0...
    Connected to 0.0.0.0.
    Escape character is '^]'.
    > /usr/src/app/api/tasks.py(55)my_task()
    -> scraper_res = myfunc(url, *args, **kwargs)
    (Pdb) pp locals()

相关问题