PyCharm 远程解释器:无法执行 Docker 的 Python 二进制文件

Ste*_*ely 4 python remote-debugging remote-server pycharm docker

我已将 PyCharm 配置为定位 Docker 容器中的 Python 二进制文件,但收到此错误:

Couldn't refresh skeletons for remote interpreter
failed to run generator3.py for docker://app:latest//usr/local/python/bin/python, exit code 126, stderr: ----- /usr/local/python/bin/python: /usr/local/python/bin/python: cannot execute binary file -----
Run Code Online (Sandbox Code Playgroud)

在使用 Python 3.4.3 的虚拟机中运行 PyCharm 5.0.4 和 Docker 1.10.0。

这是我的 PyCharm 远程解释器设置: 在此输入图像描述

保存这些设置会出现Non-zero exit code.上述错误。

Tim*_*win 5

在你的 docker 镜像中,Dockerfile你可能会找到一个ENTRYPOINT ["bash"]或类似的。PyCharm 将尝试像这样运行解释器:

docker run app:latest /usr/local/python/bin/python

与 ENTRYPOINT 结合使用,会在容器内生成以下命令:

bash /usr/local/python/bin/python

由此看来,错误消息是有道理的。如果您可以控制 Dockerfile,则可以将ENTRYPOINT更改为CMD,或者 - 如果这不适合您 - 更改入口点,以便它可以作为/usr/local/python/bin/python参数使用并用它做正确的事情。