PyCharm 远程调试使用远程容器 Python 解释器

时间:2021-03-18 09:51:07

标签: python docker ssh pycharm containers

我的情况是我在远程服务器上设置了一个容器,容器内部有一个虚拟环境。我在这个容器中的这个虚拟环境中使用 python 解释器,而不是主机上的那个。

在我的本地机器上,我可以打开 PyCharm,并使用 Tools->Deployment->Configuration 轻松设置远程连接。对于特定的项目,我可以通过单击文件->设置->项目解释器来设置解释器。但是,我似乎只能选择远程服务器上的主机Python解释器(/usr/bin/python),而不是容器中虚拟环境内部的。我如何设置使用这个解释器?

我用谷歌搜索但找不到确切的解决方案。我认为我不需要在本地安装 Docker,因为我的 Docker 在远程服务器端,对吗?

1 个答案:

答案 0 :(得分:1)

以类似的方式连接到远程主机 - 您需要设置具有相同功能的容器,例如设置 ssh 服务器在那里运行。然后您应该将端口暴露给公共世界或使用 nested ssh 隧道,这将是更好的选择。

另一种有趣的方法(可能推荐)是 forward Docker socket from the remote machine 以便您本地的 Docker CLI 使用此套接字向远程主机发送命令。理论上,当你在那里设置正确的 Docker 主机地址时,你可以直接在 PyCharm 中添加这个容器。

此外,PyCharm 不支持本地主机系统以外的虚拟环境。但是,您可以尝试添加 python 的路径并查看它是否有效,例如venv/bin/python 来自项目目录。