使用第三方镜像
操作场景
CCE支持拉取第三方镜像仓库的镜像来创建工作负载。
通常第三方镜像仓库必须经过认证(账号密码)才能访问,而CCE中容器拉取镜像是使用密钥认证方式,这就要求在拉取镜像前先创建镜像仓库的密钥。
前提条件
使用第三方镜像时,请确保Autopilot可以正常访问私有仓库所在的网络环境,可供选择的方案如下:
通过界面操作
使用kubectl创建第三方镜像仓库的密钥
- 请参见通过kubectl连接集群,使用kubectl连接集群。
- 通过kubectl创建认证密钥 ,该密钥类型为kubernetes.io/dockerconfigjson类型。
kubectl create secret docker-registry myregistrykey -n default --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL
其中,myregistrykey为密钥名称,default为密钥所在的命名空间,其余参数如下所示。
- DOCKER_REGISTRY_SERVER:第三方镜像仓库的地址,如“www.3rdregistry.com”或“10.10.10.10:443”。
- DOCKER_USER:第三方镜像仓库的账号。
- DOCKER_PASSWORD:第三方镜像仓库的密码。
- DOCKER_EMAIL:第三方镜像仓库的邮箱。
- 创建工作负载时使用第三方镜像,具体步骤请参见如下。
kubernetes.io/dockerconfigjson类型的密钥作为私有镜像获取的认证方式,以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 #使用上面创建的密钥