第 45 号 您正在将一项服务部署到 Oracle 基础架构 (OCI) Container En9ine for Kubernetes (OKE) 中,该服务使用来自私有资源库的 docker 映像。要从 OKE 访问该资源库,需要进行哪些配置?
说明
在部署过程中从注册表中提取映像
在将应用程序部署到 Kubernetes 集群的过程中,你通常会希望从 Docker 注册表中提取一个或多个映像。在应用程序的清单文件中,你可以指定要提取的映像、提取映像的注册表以及提取映像时要使用的凭证。清单文件通常也被称为 pod spec 或 deployment.yaml 文件(当然也允许使用其他文件名)。
如果希望应用程序提取 Oracle 云基础架构注册表中的映像,则必须执行两个步骤:
- 您必须使用 kubectl 创建一个 Docker 注册秘钥。该秘密包含调用映像时要使用的 Oracle 云计算基础架构凭据。创建秘密时,Oracle 强烈建议您使用最新版本的 kubectl 来创建 Docker 注册表秘密:
1- 如果尚未设置,请按照以下步骤设置群集的 kubeconfig 配置文件,并(如有必要)设置 KUBECONFIG 环境变量以指向该文件。请注意,您必须设置自己的 kubeconfig 文件。您不能使用其他用户设置的 kubeconfig 文件访问群集。
2- 在终端窗口中,输入
$ kubectl create secret docker-registry -docker-server=.ocir.io
-docker-username='/' -docker-password=''
-docker-email=''(电子邮件地址
在哪里?
是您选择的名称,您将在清单文件中使用该名称来指代秘密。例如,ocirsecret
是您使用的 Oracle 云计算基础架构注册表区域的密钥。例如,iad.
查看各地区的可用性。
ocir.io 是 Oracle 云基础架构注册表名称。
是自动生成的对象存储命名空间字符串,它包含应用程序要从中提取映像的存储库(如 "租户信息 "页面所示)。例如,acme-dev 租户的命名空间可能是 ansh81vru1zp。请注意,对于某些较早的租用,命名空间字符串可能与租用名称相同,都是小写字母(例如,acme-dev)。
是提取图像时使用的用户名。该用户名必须能访问 指定的租户。例如,
[email protected] 。如果您的租户与 Oracle 身份云服务联合,请使用 oracleidentitycloudservice/ 格式。
是 指定的用户的授权令牌。例如,k]j64r{1sJSSF-;)K8
是一个电子邮件地址。电子邮件地址是必需的,但指定什么并不重要。例如,
[email protected]- 您必须在应用程序的清单文件中指定要从 Oracle Cloud Infrastructure Registry 提取的映像,包括存储库位置和要使用的 Dockerregistry 密钥。
参考资料
https://docs.cloud.oracle.com/en-us/iaas/Content/Registry/Tasks/registrypullingimagesfromocir.htm
发表回复