阿里实战集群拉取私有镜像权限问题

工作中无意同事把 namespace修改了导致,dock pull 无法拉取,联系技术支持也没有能修复到以前,只好添加新的imagePullSecrets参数进行支持。

1 apiVersion: apps/v1
2 kind: Deployment
3 metadata:
4 name: lxw
5 namespace: goweb
6 spec:
7 selector:
8 matchLabels:
9 app: lxw-backend
10 replicas: 1
11 template:
12 metadata:
13 labels:
14 app: lxw-backend
15 spec:
16 containers:
17 - name: lxw-backend
18 image: registry.cn-beijing.aliyuncs.com/lxw-test/lxw-backend:#Tag
19 command: ["/lxw-backend"]
20 imagePullSecrets:
21 - name: ali-image-key

注意:
imagePullSecrets:

    - name: ali-image-key

增加如上一段代码即可,注意:imagePullSecrets与containers同级

cat ~/.docker/config.json | base64 -w 0
xxxxxxxxxx
新建私钥(为每一个需要私有镜像的namespace都要增加一个),如下每个命名空间都要增加密钥
1 apiVersion: v1
2 kind: Secret
3 metadata:
4 name: ali-image-key
5 namespace: goweb
6 data:
7 .dockerconfigjson: xxxxxxxxxxxx
8 type: kubernetes.io/dockerconfigjson 9
10 ---
11
12 apiVersion: v1
13 kind: Secret
14 metadata:
15 name: ali-image-key
16 namespace: default
17 data:
18 .dockerconfigjson: xxxxxxxx
19 type: kubernetes.io/dockerconfigjson

具体添加私密的方法:

把上面代码保存到一文件中,如 secret.yml,然后执行

kubectl apply -f secret.yml

即部署生效

上一篇:InfluxDb 时间范围查询总结


下一篇:信息可视化案例