CCE支持拉取第三方镜像仓库的镜像来创建工作负载。
通常第三方镜像仓库必须经过认证(帐号密码)才能访问,而CCE中容器拉取镜像是使用密钥认证方式,这就要求在拉取镜像前先创建镜像仓库的密钥。
使用第三方镜像时,请确保工作负载运行的节点可访问公网。您可以通过负载均衡(LoadBalancer)方式访问公网。
步骤 1 创建第三方镜像仓库的密钥。
单击左侧导航栏的“配置中心 > 密钥 Secret”,单击“添加密钥”,密钥类型必须选择为kubernetes.io/dockerconfigjson,如下图所示。详细操作请参见创建密钥。
此处的“用户名”和“密码”请填写第三方镜像仓库的帐号密码。
步骤 2 参照创建无状态负载(Deployment)或创建有状态负载(StatefulSet),选择第三方镜像时,请执行如下操作。
1. 密钥认证:是。
2. 选择密钥:选择步骤1中创建的密钥。
3. 镜像地址:输入镜像地址。
步骤 3 单击“创建”。
步骤 1 请参见通过kubectl操作CCE集群配置kubectl命令。
步骤 2 登录已配置好kubectl命令的弹性云主机。
步骤 3 通过kubectl创建认证密钥 ,该密钥类型为dockercfg类型。
kubectl create secret docker-registry myregistrykey --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL
其中,myregistrykey为密钥名称,其余参数如下所示。
- DOCKER_REGISTRY_SERVER:第三方镜像仓库的地址,如“www.3rdregistry.com”或“10.10.10.10:443”。
- DOCKER_USER:第三方镜像仓库的帐号。
- DOCKER_PASSWORD:第三方镜像仓库的密码。
- DOCKER_EMAIL:第三方镜像仓库的邮箱。
步骤 4 创建工作负载时使用第三方镜像,具体步骤请参见如下。
dockecfg类型的密钥作为私有镜像获取的认证方式,以Pod为例,创建的myregistrykey作为镜像的认证方式。
apiVersion: v1
kind: Pod
metadata:
name: foo
namespace: default
spec:
containers:
- name: foo
image: www.3rdregistry.com/janedoe/awesomeapp:v1
imagePullSecrets:
- name: myregistrykey #使用上面创建的密钥