VScode Devcontainer 中的命令失败 docker-compose

Oct*_*scu 16 docker docker-compose visual-studio-code vscode-devcontainer

我刚刚开始在一个已经存在的项目上使用 Docker(它运行到 Docker 容器中)。我没有太多的 Docker 背景 - 我只是通过 GUI 通过按“播放”按钮来使用它。

现在我有一个项目运行到容器中,但我在启动它时遇到了困难。

我收到此错误:

[2022-03-31T15:30:27.408Z] Error: Command failed: docker-compose -f c:\Users\Octavian\Desktop\django-analyzer\docker-compose.dev.yml config
[2022-03-31T15:30:27.408Z]     at Ru (c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js:209:813)
[2022-03-31T15:30:27.408Z]     at processTicksAndRejections (node:internal/process/task_queues:96:5)
[2022-03-31T15:30:27.408Z]     at async dR (c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js:181:643)
[2022-03-31T15:30:27.408Z]     at async hR (c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js:178:2075)
[2022-03-31T15:30:27.408Z]     at async RR (c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js:223:2195)
[2022-03-31T15:30:27.408Z]     at async Jw (c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js:223:3221)
[2022-03-31T15:30:27.409Z]     at async TR (c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js:223:13880)
[2022-03-31T15:30:27.409Z]     at async FR (c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js:223:13605)
[2022-03-31T15:30:27.417Z] Stop (3507 ms): Run: C:\Users\Octavian\AppData\Local\Programs\Microsoft VS Code\Code.exe c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js up --container-data-folder .vscode-server/data/Machine --container-system-data-folder /var/vscode-server --workspace-folder c:\Users\Octavian\Desktop\django-analyzer --workspace-mount-consistency cached --id-label vsch.local.folder=c:\Users\Octavian\Desktop\django-analyzer --id-label vsch.quality=stable --log-level debug --config c:\Users\Octavian\Desktop\django-analyzer\.devcontainer\devcontainer.json --mount type=volume,source=vscode,target=/vscode,external=true --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root true
[2022-03-31T15:30:27.417Z] Exit code 1
[2022-03-31T15:30:27.420Z] Command failed: C:\Users\Octavian\AppData\Local\Programs\Microsoft VS Code\Code.exe c:\Users\Octavian\.vscode\extensions\ms-vscode-remote.remote-containers-0.231.1\dist\spec-node\devContainersSpecCLI.js up --container-data-folder .vscode-server/data/Machine --container-system-data-folder /var/vscode-server --workspace-folder c:\Users\Octavian\Desktop\django-analyzer --workspace-mount-consistency cached --id-label vsch.local.folder=c:\Users\Octavian\Desktop\django-analyzer --id-label vsch.quality=stable --log-level debug --config c:\Users\Octavian\Desktop\django-analyzer\.devcontainer\devcontainer.json --mount type=volume,source=vscode,target=/vscode,external=true --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root true
[2022-03-31T15:30:27.421Z] Exit code 1
Run Code Online (Sandbox Code Playgroud)

这是我的 docker-compose.yml (如果有帮助的话)

version: '3.7'

services:
  redis:
    //data

  postgres:
    //data

  django:
    //data

volumes:
  db-data:
Run Code Online (Sandbox Code Playgroud)

这个错误从何而来?我该如何修复它?

谢谢。

小智 8

看起来您正在尝试 VS Code devcontainers。错误输出在这里并不是很有帮助。

docker-compose 似乎不喜欢 docker-compose.dev.yml 文件的格式,因为它出错:

docker-compose -f c:\Users\Octavian\Desktop\django-analyzer\docker-compose.dev.yml config
Run Code Online (Sandbox Code Playgroud)

尝试在命令行中运行该命令,它应该可以为您提供有关 docker-compose.dev.yml 无效原因的更好信息。


Tan*_*lam 1

尝试检查您的 docker 版本。然后从此处选择适当的压缩版本,然后在此处尝试此官方版本,或者您可以在此处尝试此模板撰写文件

确保您的 docker 已正确安装在本地计算机上。