Crie um segredo de credencial do Registro e uma referência nas especificações do pod e da implantação para que você possa efetuar pull de imagens de contêiner sem erros.
O Docker Hub requer uma conta da qual extrair imagens. Você pode criar um segredo do Kubernetes com suas credenciais do Docker Hub e fazer referência a esse segredo nos pods e nas especificações de implantação.
Essa abordagem também pode ser usada para outros registros privados.
Procedimento
- Execute
docker version
e verifique se o Docker está instalado.
- Execute
docker login -u USERNAME
.
- Digite sua senha do Docker Hub.
- Execute
cat ~/.docker/config.json
.
- Execute o seguinte comando para criar um segredo genérico chamado
regcred
que inclui suas credenciais de acesso do Docker Hub.
kubectl create secret generic regcred \
--from-file=.dockerconfigjson=/home/ubuntu/.docker/config.json \
--type=kubernetes.io/dockerconfigjson
Você deverá ver
secret/regcred created
.
- Verifique o segredo.
kubectl get secrets
NAME TYPE DATA AGE
default-token-w7wqk kubernetes.io/service-account-token 3 6h28m
regcred kubernetes.io/dockerconfigjson 1 3h22m
Faça referência ao segredo regcred no YAML.
- Consulte o segredo
regcred
na seção imagePullSecrets
do pod ou especificação de implantação para imagens de contêiner.
Por exemplo:
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