python - VSCode remote-容器默认python解释器

我有一个 dockerfile 来创建一个带有 miniconda 的容器并安装一些包(在此处修剪):

FROM continuumio/miniconda3:4.11.0

# install the necessary packages
RUN conda install -c conda-forge python=3.10.4 \
  ipykernel=6.13.0 \
  numpy=1.22.3

ENV APP_DIR /app
WORKDIR ${APP_DIR}

CMD /bin/bash

然后我使用 VSCode,将“remote-containers”扩展名为“在容器中打开文件夹”。

然后我打开一个 python 文件并按 F5 运行,但它无法识别某些包。我必须单击 VSCode 右下角将解释器从“3.9.2 64-bit”(/usr/bin/python3)更改为“3.10.4('base':conda)”(/opt/conda/bin/python)。

有没有办法避免这最后一步?也许在 devcontainer.json 文件中添加一些东西?到目前为止的主要想法是尝试修改 PATH 环境变量,使其不会检测到 3.9.2 python,或者使用 dockerfile 中的命令实际删除 3.9.2 python 文件夹或链接,但是这些想法看起来都很丑陋。

回答1

您是否尝试在 devcontainer.json 中添加“设置”字段以便指定 python.pythonPath value ?

像这样 :

// devcontainer.json
{
    "name": "My devcontainer",
    "settings": {
        "python.pythonPath": "/opt/conda/bin/python"
    },
    // Add the IDs of extensions you want installed when the container is created.
    "extensions": [
        "ms-python.python",
        "ms-azuretools.vscode-docker",
    ]
}

相似文章

最新文章