防止 VSCode 在 devcontainer 构建期间拉取

问题描述 投票:0回答:1

在 VSCode 中使用 devcontainers 时,我发现构建映像的命令始终包含“--pull”指令。但是如果我想使用完全本地的基础映像怎么办?如果我不想要怎么办?被拉取并且只使用本地缓存的?

有没有办法在

devcontainer.json
中配置告诉它不要拉?

visual-studio-code vscode-remote vscode-devcontainer devcontainer
1个回答
0
投票

我解决这个问题的方法是使用 devcontainer.json 的 initializeCommand 指令。

使用它为本地映像添加新标签,并将其用作 Dockerfile 中的基础,因此 devcontainers 不会尝试拉取。如果您使用可以拉取的标签,devcontainer 似乎总是使用拉取/远程标签:

devcontainer.json
"initializeCommand": "docker build -t me/my_image:local ."
Dockerfile
FROM me/my_image:local AS base

或者,您可以使用环境变量在不同的上下文中设置标签

"initializeCommand": "TAG=local docker build -t my_image:local ."
FROM me/my_image:${TAG:-latest} AS base

然后,在其他地方或当您实际需要拉取的图像时使用其他标签。 另外,请确保永远不要推送本地标签。

© www.soinside.com 2019 - 2024. All rights reserved.