我在Visual Studio Code中有两个任务,需要将两个不同的镜像运行到容器中。但是,只有最后一个docker run任务被VSCode识别。
这是我的tasks.json文件:
{
"version": "2.0.0",
"tasks": [
{
"label": "docker-build-1",
"type": "docker-build",
"platform": "python",
"dockerBuild": {
"tag": "image1:latest",
"dockerfile": "${workspaceFolder}/app1/dev.Dockerfile",
"context": "${workspaceFolder}/",
"pull": true
}
},
{
"label": "docker-build-2",
"type": "docker-build",
"platform": "python",
"dockerBuild": {
"tag": "image2:latest",
"dockerfile": "${workspaceFolder}/app2/dev.Dockerfile",
"context": "${workspaceFolder}/",
"pull": true
}
},
{
"label": "docker-run-1",
"type": "docker-run",
"dependsOn": [
"docker-build-1"
],
"python": {
"module": "app.main"
},
"dockerRun": {
"network": "mynetwork"
}
},
{
"label": "docker-run-2",
"type": "docker-run",
"dependsOn": [
"docker-build-2"
],
"python": {
"module": "app.main"
},
"dockerRun": {
"network": "mynetwork"
}
},
]
}
当 vscode 显示运行任务菜单时,只有
docker-run-2
任务显示:
实际上,只有 tasks.json
文件中的最后一个 docker run 任务被显示。如果我改变任务列表的顺序,那么 vscode 只会识别 docker-run-1
。我在文档中搜索了一下,但没有找到任何关于这种行为的说明。有什么想法为什么会发生这种情况?我的想法是在 vscode 中设置两个调试配置用于两个应用程序,但运行不是最后一个的应用程序的调试配置会在 vscode 中产生错误: