使用PyCharm Cloud Code调试K8s容器中FastAPI时断点失效
容器部署的Python 3.11 FastAPI应用断点无法触发问题
环境配置
- 安装Cloud Code插件的PyCharm
- 基于
tiangolo/uvicorn-gunicorn-fastapi:python3.11镜像的Python 3.11 FastAPI应用 - 通过
Cloud Code: Kubernetes运行配置在本地docker-desktop部署
现象
- 容器部署成功
- 应用端口和调试端口的端口转发均正常
- 应用可正常运行
- 断点从未触发,调试器后台任务显示“waiting for connection”
日志警告(不确定是否相关)
[elon] WARN[0000] not a python launcher: unable to determine python version from "/usr/bin/env": exit status 125
容器进程检查
$ kubectl exec -it pod-name -- ps -ef root 1 0 0 13:39 pts/0 00:00:00 /dbg/python/launcher --mode pydevd --port 5678 -- /start-reload.sh root 13 1 0 13:39 pts/0 00:00:01 /usr/local/bin/python3.11 /usr/local/bin/uvicorn --reload --host 0.0.0.0 --port 8080 --log-level info app.web:app
容器访问主机测试
kubectl exec -it pod-name -- wget -O- http://host.docker.internal:63341 HTTP request sent, awaiting response... 404 Not Found
端口转发状态
Port forwarding pod/pod-name in namespace default, remote port 5678 -> http://127.0.0.1:5678
环境详情
- PyCharm Professional
2024.3.2 - Cloud Code插件版本
24.11.1-233-api-version-223 - macOS Sequoia
15.3.1 - Docker Desktop版本
4.38.0 (181591)
(附调试器设置和运行配置截图)
内容的提问来源于stack exchange,提问作者tara-tripathy
相关产品推荐
相关产品推荐

