现在我们的DC(部署配置(对它进行了硬编码:
///dc.yaml
image: containers.nabisco.com/cdt-org/cdt-dev:latest
然后我们通过以下方式推出 DC:
$ oc rollout latest dc/cdtcae-prod-deployment
然而,我注意到的一个问题是,有时"最新"标签指的是旧的标签,而较新的标签没有被拉入 - 可能是 OpenShift 或 Kubernetes 的错误,或者不是。
目前,我们希望使用 Git 提交哈希来唯一标识部署。
我的问题是 - 有没有办法使用命令行覆盖/更新上面的图像:行,所以这一行:
image: containers.nabisco.com/cdt-org/cdt-dev:latest
会被这样的东西覆盖:
oc rollout --tag="$my_git_commit_hash" dc/cdtcae-prod-deployment
我听说最好的选择是在yaml DC配置中使用以下设置:
imagePullPolicy: "Always"
然后你可以硬编码一些独特的值
image: containers.nabisco.com/cdt-org/cdt-dev:foobarbaz
它将始终拉取最新的,而不是使用缓存。