我遵循了本教程,容器注册表教程基本映像更新。我想将其适应我当前的工作流程。然而,如果基础图像标签(即FROM ${REGISTRY_NAME}/baseimages/pyapp:${TAG}
(发生变化,我希望Dockerfile-app
自动构建
我只是想在基本映像Dockerfile中放入一个环境变量,Dockerfile-base
就像ENV TAG v2
一样,但它如何传递给Dockerfile-app
?我可能不明白什么。如有任何指导,我们将不胜感激。谢谢
好吧,您可以看到Dockerfile-app
在开头设置了选项ARG REGISTRY_NAME,然后将ARG用作:
FROM ${REGISTRY_NAME}/baseimages/node:15-alpine
然后你需要使用Azure CLI命令来创建这样的任务:
az acr task create
--registry $ACR_NAME
--name baseexample1
--image helloworld:{{.Run.ID}}
--arg REGISTRY_NAME=$ACR_NAME.azurecr.io
--context https://github.com/$GIT_USER/acr-build-helloworld-node.git
--file Dockerfile-app
--git-access-token $GIT_PAT
此命令使用参数--arg
将ARG REGISTRY_NAME传递到Dockerfile-app
文件,而不是环境变量。
如果你想在Dockerfile-app
中使用FROM ${REGISTRY_NAME}/baseimages/pyapp:${TAG}
,那么你需要在文件中设置两个ARG:
ARG REGISTRY_NAME
ARG TAG
并在CLI命令中添加两个参数:
--arg REGISTRY_NAME=$ACR_NAME.azurecr.io
--arg TAG=your_tag