第 7 章 Kubernetes 资源使用镜像流
			作为 OpenShift Container Platform 的原生资源,镜像流可用于 OpenShift Container Platform 中的所有原生资源,如 Build 或 DeploymentConfigs 资源。也可以将它们用于原生 Kubernetes 资源,如 Job、ReplicationController、ReplicaSet 或 Kubernetes Deployment 资源。
		
7.1. 使用 Kubernetes 资源启用镜像流
				在 Kubernetes 资源中使用镜像流时,您只能引用位于与资源相同的项目中的镜像流。镜像流引用必须包含单个片段值,如 ruby:2.5,其中 ruby 是镜像流的名称,它具有名为 2.5 的标签,并位于与进行引用的资源相同的项目中。
			
不要在默认项目中运行工作负载或共享对默认项目的访问权限。为运行核心集群组件保留默认项目。
					以下默认项目被视为具有高度特权:default, kube-public, kube-system, openshift, openshift-infra, openshift-node,其他系统创建的项目的标签 openshift.io/run-level 被设置为 0 或 1。依赖于准入插件(如 pod 安全准入、安全性上下文约束、集群资源配额和镜像引用解析)的功能无法在高特权项目中工作。
				
使用 Kubernetes 资源启用镜像流的方法有两种:
- 启用针对特定资源的镜像流解析。这只允许此资源使用 image 字段中的镜像流名称。
- 在镜像流上启用镜像流解析。这允许指向此镜像流的所有资源在 image 字段中使用它。
流程
					您可以使用 oc set image-lookup 对镜像流上的特定资源或镜像流解析启用镜像流解析功能。
				
- 要允许所有资源引用名为 - mysql的镜像流,请输入以下命令:- oc set image-lookup mysql - $ oc set image-lookup mysql- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 这会将 - Imagestream.spec.lookupPolicy.local字段设置为 true。- 启用镜像查询的镜像流 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 启用后,会为镜像流中的所有标签启用此行为。 
- 然后,您可以查询镜像流并查看是否设置了选项: - oc set image-lookup imagestream --list - $ oc set image-lookup imagestream --list- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
您可以在特定资源上启用镜像查找。
- 要允许名为 - mysql的 Kubernetes 部署使用镜像流,请运行以下命令:- oc set image-lookup deploy/mysql - $ oc set image-lookup deploy/mysql- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 这会在部署上设置 - alpha.image.policy.openshift.io/resolve-names注解。- 启用镜像查询部署 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
您可以禁用镜像查找。
- 要禁用镜像查找,使用 - --enabled=false:- oc set image-lookup deploy/mysql --enabled=false - $ oc set image-lookup deploy/mysql --enabled=false- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow