Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

317
Visualizações
No se pudo extraer el repositorio de imágenes que no existe o puede requerir un 'inicio de sesión en la ventana acoplable':

Recibo este error al iniciar un Pod

 Failed to pull image "docker-username/docker-private-repository:latest": rpc error: code = Unknown desc = Error response from daemon: pull access denied for docker-username/docker-private-repository, repository does not exist or may require 'docker login': denied: requested access to the resource is denied

Mi configuración es la siguiente:

Ceated un servicio secreto usando la línea de comando

 kubectl create secret docker-registry docker-keys --docker-username=docker-username --docker-password=password --docker-email=docker-email@gmail.com --docker-server=https://index.docker.io/v1

que genera los siguientes datos dentro de secretos

 kubectl get secret docker-keys -o json | jq '.data | map_values(@base64d)' { ".dockerconfigjson": "{\"auths\":{\"https://index.docker.io/v1\":{\"username\":\"docker-username\",\"password\":\"password\",\"email\":\"docker-email@gmail.com\",\"auth\":\"base64encodedtoken\"}}}" }

Luego, en la implementación, estoy usando secretos docker-keys

 apiVersion: apps/v1 kind: Deployment metadata: name: docker-private-repository labels: app: docker-private-repository spec: replicas: 1 selector: matchLabels: app: docker-private-repository template: metadata: labels: app: docker-private-repository spec: imagePullSecrets: - name: docker-keys containers: - name: docker-private-repository image: docker-username/docker-private-repository:latest imagePullPolicy: Always ports: - containerPort: 3000

Traté de buscar una solución, pero siempre terminé con la configuración anterior.

Actualización 1: el servicio Secrets y el pod se ejecutan en el mismo espacio de nombres default . Tirar manualmente desde docker-hub funciona

 docker pull docker-username/docker-private-repository:latest latest: Pulling from docker-username/docker-private-repository 0ecb575e629c: Already exists ... 7467d1831b69: Already exists Digest: sha256:153643ecb19c2ce54635839ce9393b2e256ce6c34a2fe75b91c7a41525a6a535 Status: Downloaded newer image for docker-username/docker-private-repository:latest docker.io/docker-username/docker-private-repository:latest

Update2 kubectl describe pod

Tengo 2 servicios de sercrets, uno para las credenciales de dockerhub y otro es token-rzlx6 por el motivo que sea. La cuestión es que cuando ejecuto describe pod, no veo los secretos para que dockerhub se monte como token-rzlx6 , ¿podría ser esta la razón? ¿Y por qué no está montado?

 ... Volumes: default-token-rzlx6: Type: Secret (a volume populated by a Secret) SecretName: default-token-rzlx6 Optional: false QoS Class: BestEffort Node-Selectors: <none> ...
over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Entonces, el problema era el valor del servidor acoplable. Según los tutoriales que he visto, estaba usando api V1, mientras que mi imagen fue enviada/creada a dockerhub con V2, puede que no sea relevante y que V1 esté en desuso. Cuando creo un servicio secreto, necesito usar el servidor V2 https://index.docker.io/v2/ , como:

 kubectl create secret docker-registry docker-keys \ --docker-username=yyyyyy \ --docker-password=xxxxx \ --docker-email=my@mail.com \ --docker-server=https://index.docker.io/v2/

Algo simple, que tomó días descubrir, ya que muchos artículos tienen V1 o no lo muestran en absoluto o usan el registro privado de Docker. Los documentos están aquí. https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/

Actualizar:

Una cosa más por la que no estaba prestando atención a la versión de la API es el archivo de docker config , que tiene V1 como API y desde aquí tomé el punto final para crear un servicio secreto, mientras que funcionaba solo con V2.

 cat ~/.docker/config.json { "auths": { "https://index.docker.io/v1/": {} }, "credsStore": "osxkeychain" }%

Actualización 2: Sin embargo, cuando saqué la imagen localmente con el comando docker pull , la imagen se extrajo correctamente usando la URL v1. Se supone que api V1 funciona dentro de docker, pero no en kubernetes.

over 4 years ago · Santiago Trujillo Relatório

0

estaba teniendo este problema, si cambio mi repositorio a público, funciona.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda