Risolvere i problemi relativi alle immagini container

Scopri i passaggi per la risoluzione dei problemi, utili in caso di problemi nella gestione delle immagini container in Artifact Registry.

Sintassi dell'ID progetto nell'interfaccia a riga di comando Docker

A causa del modo in cui Docker tratta i due punti, quando utilizzi l'interfaccia a riga di comando Docker, devi sostituire i due punti (:) nell'ID progetto con una barra (/). Ad esempio, se l'ID progetto è s3ns:my-project, utilizza s3ns/my-project.

Invalid Docker string dopo un comando gcloud artifacts

Se dopo aver eseguito un comando gcloud artifacts viene visualizzato un dial tcp: lookup <var>REGION</var>: no such hosterrore, assicurati di utilizzare un endpoint con una regione specifica, ad esempio u-france-east1-docker.s3nsregistry.fr. Google Cloud CLI non supporta l'utilizzo di docker.s3nsregistry.fr come unico endpoint.

Impossibile eseguire il pull di un'immagine o il deployment in un ambiente Cloud de Confiance by S3NS runtime

Verifica quanto segue:

  1. Verifica che il percorso completo dell'immagine di cui stai eseguendo il push sia corretto. Il percorso deve includere il nome host del registro, Cloud de Confiance by S3NS, ID progetto, repository e immagine. Ad esempio:
    u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:v1
    Per ulteriori informazioni, vedi Nomi di repository e immagini.
  2. Verifica che l'account che esegue il pull dell'immagine disponga delle autorizzazioni corrette per la lettura dal repository. Se hai disattivato la concessione automatica dei ruoli ai service account, devi concedere i ruoli di Artifact Registry ai service account di runtime.

Impossibile eseguire il push di un'immagine in Artifact Registry

Prova a procedere come segue:

  1. Verifica che il percorso completo dell'immagine di cui stai eseguendo il push sia corretto. Il percorso deve includere il nome host del registro, Cloud de Confiance by S3NS l'ID progetto, repository e l'immagine. Ad esempio:
    u-france-east1-docker.s3nsregistry.fr/my-project/my-repo/my-image:v1
      

    Ogni repository Artifact Registry è una risorsa separata, quindi non puoi eseguire il push di un'immagine in un percorso senza un repository. Ad esempio, u-france-east1-docker.s3nsregistry.fr/my-project/my-image:v1 è un percorso immagine non valido.

    Per ulteriori informazioni, vedi Nomi di repository e immagini.

  2. Verifica che l'account che esegue il push dell'immagine disponga delle autorizzazioni per la scrittura nel repository. Se hai disattivato la concessione automatica dei ruoli ai service account, devi concedere i ruoli di Artifact Registry ai service account di runtime.
    • Per i service account di Compute Engine e Google Kubernetes Engine, devi concedere il ruolo Writer Artifact Registry (roles/artifactregistry.writer) al account di servizio di runtime.
  3. Se Artifact Registry ha restituito il messaggio The repository has enabled tag immutability, significa che l'immutabilità dei tag è configurata per il repository. Non puoi eseguire il push di un'immagine con un tag già utilizzato per un'altra versione della stessa immagine nel repository. Prova a eseguire di nuovo il push dell'immagine con un tag non utilizzato da altre versioni archiviate dell'immagine.

    Per verificare che un repository sia configurato per i tag immagine immutabili, controlla la colonna Tag immagine immutabili nell'elenco dei repository nella Cloud de Confiance console o esegui il seguente comando:

    gcloud artifacts repositories describe REPOSITORY \
          --project=PROJECT-ID \
          --location=LOCATION
      

Messaggi ImagePullBackOff ed ErrImagePull

I messaggi con ImagePullBackOff ed ErrImagePull indicano che GKE non può eseguire il pull di un'immagine dal registro.