【发布时间】:2019-11-18 22:11:17
【问题描述】:
我有一个定义对象“ImageStream”的模板:
{
"apiVersion":"v1",
"kind": "ImageStream",
"metadata": {
"name": "${APPLICATION_NAME}-img",
"labels": {
"app": "${APPLICATION_NAME}"
}
},
"spec": {
"tags": [
{
"name": "latest",
"from": {
"kind": "DockerImage",
"name": "rlanhellas/${APPLICATION_NAME}"
}
}
]
}
}
所以,创建后我在 openshift 注册表中获取了图像,oc get is 命令返回:
$ oc get is
NAME IMAGE REPOSITORY TAGS UPDATED
safepark-netcore-img default-route-openshift-image-registry.apps.us-east-2.starter.openshift-online.com/safepark/safepark-netcore-img latest About an hour ago
我在 dockerhub 中的原始图像和我的管道工具总是更新 dockerhub 中的 latest 标签。但是 openshift 中的 ImageStream 没有更新,所以我总是在 openshift 中获得旧版本的图像,并且永远不会触发新构建,因为 openshift 图像没有更新。
如何将 OpenShift 中的 ImageStream“链接”到我的 Dockerhub 映像,并确保 dockerhub 中更新的映像将更新 openshift 中的映像?
重要提示:我正在使用 Openshift Online 和免费计划。
【问题讨论】:
-
您无法以全自动方式链接它们,因此更改会立即反映。使用
oc import-image命令触发对图像流的更新,使其使用最新的。 -
谢谢,它有效。我会将此命令添加到我的管道中
标签: docker containers openshift