首页 > 解决方案 > 使用 Docker 设置 python 开发环境(在 vscode 中使用 linting 和代码完成)

问题描述

设置

我正在探索在 docker 容器中设置 python 开发环境的方法。

在我的本地(主机)中,我有项目目录:

.
├── Dockerfile
└── foo.py

我在哪里Dockerfile

FROM python:latest

RUN pip install --upgrade pip
RUN pip install matplotlib

RUN mkdir /src
WORKDIR /src

ENTRYPOINT [ "python" ]

脚本是:

try:
    import matplotlib
    print("import successfully")
except ImportError:
    print("unable to import matplotlib")

假设我没有matplotlib在我的主机上安装,然后python foo.py产生unable to import matplotlib. 当我在容器内运行时:

docker run -it --rm -v ~/tmp/:/src/ py-deb-test foo.py

我明白了import successfully

问题

现在,我的意图是在本地主机上使用 vscode 处理我的代码并在容器中运行它。问题是,在这个设置中,我不知道如何将 vscode 指向容器中运行的 python“安装”。我想过启动容器并将python从容器“安装”到本地位置并将vscode指向该位置。但到目前为止,它没有奏效。

如果不解决这个问题,vscode 不知道安装了哪些包,在哪里可以找到 linter 等等......

欢迎任何帮助和想法!

标签: pythondockervisual-studio-code

解决方案


好消息。VScode 的人们最近发布了似乎正是我想要的东西。使用容器远程 VScode,现在可以在具有所需确切环境的容器上运行编辑器。在这个 repo中我编译了一个最小的例子,我希望你会发现它很有用。


推荐阅读