1、创建前先查看secrets

[root@worker2 testyaml]# kubectl get secrets
NAME                  TYPE                                  DATA   AGE
blues-secret          kubernetes.io/dockerconfigjson        1      21m
default-token-96kct   kubernetes.io/service-account-token   3      13d

2、k8s创建secrets命令模板

kubectl create secret docker-registry NAME --docker-username=user --docker-password=password --docker-email=email

[root@worker2 testyaml]#  kubectl create secret docker-registry blues-secret --namespace=default --docker-server=harborip:port --docker-username=xxxx --docker-password=xxxxx
[root@worker2 testyaml]# kubectl get secrets
NAME                  TYPE                                  DATA   AGE
blues-secret          kubernetes.io/dockerconfigjson        1      21m
default-token-96kct   kubernetes.io/service-account-token   3      13d
[root@worker2 testyaml]# kubectl describe secrets blues-secret
Name:         blues-secret
Namespace:    default
Labels:       <none>
Annotations:  <none>

Type:  kubernetes.io/dockerconfigjson

Data
====
.dockerconfigjson:  119 bytes

3、配置yaml,通过secret获取images

[root@worker2 testyaml]# cat admin-server.yaml

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: server-admin
  labels:
    app: server-admin
spec:
  replicas: 2
  selector:
    matchLabels:
      app: server-admin
  template:
    metadata:
      labels:
        app: server-admin
    spec:
      containers:
      - name: server-admin
        image: xxxxx:9098/ydcm/server-admin:release
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 50020    #containerPort是在pod控制器中定义的、pod中的容器需要暴露的端口
      imagePullSecrets:
      - name: blues-secret
 

 

Logo

开源、云原生的融合云平台

更多推荐