繁体   English   中英

VSCode - docker 上的开发容器未运行

[英]VSCode - Dev container on docker not running

我一直在使用“远程 - 容器”扩展在 docker 容器内运行 python。 在过去的几个月里,这对我来说一直很好,没有任何问题。

今天,我尝试在以前没有运行过的 repo 上做同样的事情。 经历了整个过程,我像往常一样连接到 docker 容器。 我可以在终端中运行东西,我可以验证我需要安装的所有东西确实都安装了。

问题是 - 当我尝试调试我的代码(通过按 F5,或者甚至不使用 ctrl+F5 进行调试)时,什么也没有发生。 我可以看到小播放暂停停止栏弹出 - 在此处输入图像描述 但它立即关闭,没有任何运行......

当我查看 python 扩展的 output 时,我可以看到DAP Server launched with command: /usr/bin/python3 /root/.vscode-server/extensions/ms-python.python-2022.10.1/pythonFiles/lib/python/debugpy/adapter但同样,在那之后没有任何运行...

我的 launch.json 看起来像这样 -

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": true
        },
    ]
}

我正在运行一个简单的 python 文件 -

a = 1
print(1)

每行都有一个永远不会触发的断点

如上所述,这真的很奇怪,我一直以这种方式工作很长时间,直到现在一切都很好......

  1. launch.json中进行以下更改:

“justMyCode”:是的

true更改为false

  1. 使用红框中的调试选项:

在此处输入图像描述

  1. 如果以上没有生效,请在launch.json中添加如下内容:

    “调试标准库”:真,

问题是我安装在 docker 和 python 扩展中的 python 版本。 我在python extension v2022.10.1上有python 3.6.9 ,这是不兼容的。

解决方案是通过将以下内容添加到 devcontainer.json 来将 python 扩展降级到版本devcontainer.json -

    "settings": {
        "extensions.autoUpdate": false,
        "extensions.autoCheckUpdates": false
    },
    "extensions": [
        "ms-python.python@2022.8.1",
    ]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM