无缓存的多阶段docker构建

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

我有一个多阶段的Dockerfile,如下所示。当Dockerfile中引用的映像之一更新时,如何确保在基于此Dockerfile构建映像时再次拉出/始终拉出最新版本。使用--no-cache运行docker build命令仍在引用旧版本的映像,但实际上并未从docker注册表中获取最新版本。

docker build --no-cache -t test_deploy -f Dockerfile
FROM myreg.abc.com/testing_node:latest AS INITIMG
....
....
RUN npm install
RUN npm run build

FROM myreg.abc.com/testing_nginx:latest

COPY --from=INITIMG /sourcecode/build/ /usr/share/nginx/html
CMD ["nginx", "-g", "daemon off;"]
docker dockerfile docker-registry docker-multi-stage-build
1个回答
0
投票

--no-cache告诉docker不要重新使用缓存的图层。如果图像已经在本地存在,它不会提取图像。您可以在构建之前使用docker pull myreg.abc.com/testing_node:latest,或者更方便的是,在调用--pull时也可以添加docker build

请参见https://docs.docker.com/engine/reference/commandline/build/#options

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