我似乎遇到了一个简单的问题,并且感觉我错过了必不可少的东西。
我在我们公司有一个私人码头图像注册表,它托管我们开发的所有码头图像。
在我们的构建过程中,此注册表会不断更新,并且会经常推送新图像。
现在我们正在使用一个openshift系统,它有一些图像和它自己的注册表。
在这两个系统之间同步图像的最佳方法是什么?
例如,我们有一个像这样部署的应用程序:
oc new-app myregistry.mydomain.edu/binbase/minix
运行良好。
我们现在想用最新的更改更新此部署,为此我做了:
oc import-image minix
Tag Spec创建的PullSpec图像 最近23小时前myregistry.mydomain.edu/binbase/minix:latest f6646382cfa32da291e8380421ea656110090256cd195746a5be2fcf61e4edf1
这是正确的图像,现在正在执行
oc deploy minix --latest
但这仍然会部署当前图像,而不是新更新的图像。
知道为什么会这样,或者我们做错了什么?
我希望todo现在重新部署最新的图像。
亲切的问候
答案 0 :(得分:12)
由于在myregistry.mydomain.edu上使用了外部注册表,软件更新目前不会自动更新并推送到云系统。
要更新系统中的内部图像,请使用以下命令
oc import-image <NAME OF STREAM>
为此,您需要使用PullPollicy“始终”
配置部署配置oc edit dc <NAME OF STREAM>
您需要搜索的标记是:
imagePullPolicy:始终