在網繭和部署規格中建立登錄認證密碼和參考,以便可以正確提取容器映像。

Docker Hub 需要帳戶才能從中提取映像。您可以使用 Docker Hub 認證建立 Kuberentes 密碼,並在網繭和部署規格中參考此密碼。

此方法還可用於其他私人登錄。

必要條件

在 Ubuntu 用戶端電腦上安裝 Docker。請參閱https://docs.docker.com/engine/install/ubuntu/

程序

  1. 執行 docker version 並驗證 Docker 是否已安裝。
  2. 執行 docker login -u USERNAME
  3. 輸入 Docker Hub 密碼。
  4. 執行 cat ~/.docker/config.json
  5. 執行以下命令來建立名為 regcred 的一般密碼,其中包括您的 Docker Hub 存取認證。
    kubectl create secret generic regcred \
        --from-file=.dockerconfigjson=/home/ubuntu/.docker/config.json \
        --type=kubernetes.io/dockerconfigjson
    
    您應該會看到 secret/regcred created
  6. 驗證密碼。
    kubectl get secrets
    
    NAME                  TYPE                                  DATA   AGE
    default-token-w7wqk   kubernetes.io/service-account-token   3      6h28m
    regcred               kubernetes.io/dockerconfigjson        1      3h22m
    
    在 YAML 中參考 regcred 密碼。
  7. 在容器映像之網繭或部署規格的 regcred 部分中會參考 imagePullSecrets 密碼。
    例如:
    apiVersion: v1
    kind: Pod
    metadata:
      name: ping-pod
      namespace: default
    spec:
      containers:
      - image: busybox:1.34
        name: busybox
        command: ["ping", "-c"]
        args: ["1", "8.8.8.8"]
      imagePullSecrets:
      - name: regcred
      restartPolicy: Never