ImageStream 及其关联的标签提供了一种抽象,用于从 OpenShift Dedicated 内部引用容器镜像。ImageStream 及其标签允许您查看可用的镜像,并确保您使用了所需的特定镜像,即使存储库中的镜像发生更改。
ImageStream 不包含实际的镜像数据,而是呈现相关镜像的单个虚拟视图,类似于镜像存储库。
您可以配置构建和部署以监视 ImageStream,并在添加新镜像时收到通知,并通过执行构建或部署来做出响应。
例如,如果部署使用特定镜像,并且创建了该镜像的新版本,则可以自动执行部署以获取该镜像的新版本。
但是,如果部署或构建使用的 ImageStream 标签未更新,则即使容器镜像注册表中的容器镜像已更新,构建或部署仍将继续使用之前的(大概已知的)良好镜像。
-
OpenShift Dedicated 集成的注册表。
-
外部注册表,例如 registry.redhat.io 或 quay.io。
-
OpenShift Dedicated 集群中的其他 ImageStream。
当您定义引用 ImageStream 标签的对象(例如构建或部署配置)时,您指向 ImageStream 标签而不是存储库。当您构建或部署应用程序时,OpenShift Dedicated 使用 ImageStream 标签查询存储库以找到镜像的关联 ID,并使用该确切的镜像。
ImageStream 元数据与其他集群信息一起存储在 etcd 实例中。
-
您可以标记、回滚标签并快速处理镜像,而无需使用命令行重新推送。
-
当新镜像推送到注册表时,您可以触发构建和部署。此外,OpenShift Dedicated 还为其他资源(例如 Kubernetes 对象)提供通用触发器。
-
您可以标记定期重新导入的标签。如果源镜像已更改,则该更改会被拾取并反映在 ImageStream 中,这将根据构建或部署配置触发构建或部署流程。
-
您可以使用细粒度的访问控制共享镜像,并快速在团队之间分发镜像。
-
如果源镜像发生更改,镜像流标签仍然指向已知的良好版本镜像,确保您的应用程序不会意外中断。
-
您可以通过镜像流对象的权限来配置围绕谁可以查看和使用镜像的安全策略。
-
缺少在集群级别读取或列出镜像权限的用户仍然可以使用镜像流检索项目中标记的镜像。