Creazione di una regola pull through cache in Amazon ECR - Amazon ECR

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Creazione di una regola pull through cache in Amazon ECR

Per ogni registro upstream contenente immagini che desideri memorizzare nella cache nel tuo registro ECR privato Amazon, devi creare una regola pull through cache.

Per i registri upstream che richiedono l'autenticazione, è necessario memorizzare le credenziali in un segreto di Secrets Manager. È possibile utilizzare un segreto esistente o crearne uno nuovo. Puoi creare il segreto di Secrets Manager nella ECR console Amazon o nella console Secrets Manager. Per creare un segreto di Secrets Manager utilizzando la console Secrets Manager anziché la ECR console Amazon, consultaArchiviazione segreta delle credenziali del repository originale AWS Secrets Manager.

Prerequisiti

  • Verifica di disporre delle IAM autorizzazioni appropriate per creare regole pull through cache. Per informazioni, consultare IAMautorizzazioni necessarie per sincronizzare un registro upstream con un registro privato Amazon ECR.

  • Per i registri upstream che richiedono l'autenticazione: se desideri utilizzare un segreto esistente, verifica che il segreto di Secrets Manager soddisfi i seguenti requisiti:

    • Il nome del segreto inizia con. ecr-pullthroughcache/ Visualizza AWS Management Console solo i segreti di Secrets Manager con il ecr-pullthroughcache/ prefisso.

    • L'account e la regione in cui si trova il segreto devono corrispondere all'account e alla regione in cui si trova la regola pull through cache.

Per creare una regola di cache pull-through (AWS Management Console)

I passaggi seguenti mostrano come creare una regola pull through cache e un segreto di Secrets Manager utilizzando la ECR console Amazon. Per creare un segreto utilizzando la console Secrets Manager, vedereArchiviazione segreta delle credenziali del repository originale AWS Secrets Manager.

  1. Apri la ECR console Amazon all'indirizzo https://console.aws.amazon.com/ecr/.

  2. Dalla barra di navigazione, scegli la regione in cui configurare le impostazioni del registro privato.

  3. Nel pannello di navigazione, seleziona Private registry (Registro privato), Pull through cache (Cache pull-through).

  4. Nella pagina Pull through cache configuration (Configurazione della cache pull through), scegli Add rule (Aggiungi regola).

  5. Nel passaggio 1: specifica una pagina di origine, per Registry, scegli Amazon ECR Public, Kubernetes o Quay dall'elenco dei registri upstream, quindi scegli Avanti.

  6. Nel passaggio 2: specifica una pagina di destinazione, per il prefisso del ECRrepository Amazon, specifica il prefisso dello spazio dei nomi del repository da utilizzare per la memorizzazione nella cache delle immagini estratte dal registro pubblico di origine, quindi scegli Avanti. Per impostazione predefinita, viene popolato uno spazio dei nomi ma è possibile specificare anche uno spazio dei nomi personalizzato.

  7. Nella pagina Passaggio 3: rivedi e crea, esamina la configurazione della regola di cache pull-through, quindi seleziona Crea.

  8. Ripeti il passaggio precedente per ogni cache pull-through da creare. Le regole della cache pull-through vengono create separatamente per ciascuna regione.

  1. Apri la ECR console Amazon all'indirizzo https://console.aws.amazon.com/ecr/.

  2. Dalla barra di navigazione, scegli la regione in cui configurare le impostazioni del registro privato.

  3. Nel pannello di navigazione, seleziona Private registry (Registro privato), Pull through cache (Cache pull-through).

  4. Nella pagina Pull through cache configuration (Configurazione della cache pull through), scegli Add rule (Aggiungi regola).

  5. Nel Passaggio 1: specifica un'origine, per Registro seleziona Docker Hub, Avanti.

  6. Nella pagina Passaggio 2: configura l'autenticazione, per Credenziali Upstream devi archiviare le credenziali di autenticazione per Docker Hub in un segreto di AWS Secrets Manager . Puoi specificare un segreto esistente o utilizzare la ECR console Amazon per crearne uno nuovo.

    1. Per utilizzare un segreto esistente, scegli Usa un AWS segreto esistente. Per Nome del segreto, utilizza il menu a discesa per selezionare il segreto esistente, quindi seleziona Avanti.

      Nota

      Visualizza AWS Management Console solo i segreti di Secrets Manager i cui nomi utilizzano il ecr-pullthroughcache/ prefisso. Il segreto, inoltre, deve trovarsi nello stesso account e nella stessa regione in cui è stata creata la regola di cache pull-through.

    2. Per creare un nuovo segreto, seleziona Crea un segreto di AWS , effettua le seguenti operazioni e seleziona Avanti.

      1. Per Nome del segreto specifica un nome descrittivo per il segreto. I nomi dei segreti devono contenere un numero di caratteri Unicode compreso tra 1 e 512.

      2. Per l'e-mail di Docker Hub, specifica la tua e-mail Docker Hub.

      3. Per Token di accesso Docker Hub specifica il tuo token di accesso Docker Hub. Per ulteriori informazioni sulla creazione di un token di accesso Docker Hub, consulta Creazione e gestione di token di accesso nella documentazione di Docker.

  7. Nel passaggio 3: specifica una pagina di destinazione, per il prefisso del ECR repository Amazon, specifica lo spazio dei nomi del repository da utilizzare per la memorizzazione nella cache delle immagini estratte dal registro pubblico di origine, quindi scegli Avanti.

    Per impostazione predefinita, viene popolato uno spazio dei nomi ma è possibile specificare anche uno spazio dei nomi personalizzato.

  8. Nella pagina Passaggio 4: rivedi e crea, esamina la configurazione della regola di cache pull-through, quindi seleziona Crea.

  9. Ripeti il passaggio precedente per ogni cache pull-through da creare. Le regole della cache pull-through vengono create separatamente per ciascuna regione.

  1. Apri la ECR console Amazon all'indirizzo https://console.aws.amazon.com/ecr/.

  2. Dalla barra di navigazione, scegli la regione in cui configurare le impostazioni del registro privato.

  3. Nel pannello di navigazione, seleziona Private registry (Registro privato), Pull through cache (Cache pull-through).

  4. Nella pagina Pull through cache configuration (Configurazione della cache pull through), scegli Add rule (Aggiungi regola).

  5. Nel passaggio 1: specifica una pagina di origine, per Registro, scegli GitHub Container Registry, Avanti.

  6. Nella pagina Passaggio 2: Configurazione dell'autenticazione, per le credenziali Upstream, è necessario archiviare le credenziali di autenticazione per GitHub Container Registry in un luogo segreto. AWS Secrets Manager Puoi specificare un segreto esistente o utilizzare la ECR console Amazon per crearne uno nuovo.

    1. Per utilizzare un segreto esistente, scegli Usa un AWS segreto esistente. Per Nome del segreto, utilizza il menu a discesa per selezionare il segreto esistente, quindi seleziona Avanti.

      Nota

      Visualizza AWS Management Console solo i segreti di Secrets Manager i cui nomi utilizzano il ecr-pullthroughcache/ prefisso. Il segreto, inoltre, deve trovarsi nello stesso account e nella stessa regione in cui è stata creata la regola di cache pull-through.

    2. Per creare un nuovo segreto, seleziona Crea un segreto di AWS , effettua le seguenti operazioni e seleziona Avanti.

      1. Per Nome del segreto specifica un nome descrittivo per il segreto. I nomi dei segreti devono contenere un numero di caratteri Unicode compreso tra 1 e 512.

      2. Per il nome utente del GitHub Container Registry, specifica il tuo nome utente del GitHub Container Registry.

      3. Per il token di accesso al GitHub Container Registry, specifica il token di accesso al GitHub Container Registry. Per ulteriori informazioni sulla creazione di un token di GitHub accesso, consulta Gestire i token di accesso personali nella GitHub documentazione.

  7. Nel passaggio 3: specifica una pagina di destinazione, per il prefisso del ECR repository Amazon, specifica lo spazio dei nomi del repository da utilizzare per la memorizzazione nella cache delle immagini estratte dal registro pubblico di origine, quindi scegli Avanti.

    Per impostazione predefinita, viene popolato uno spazio dei nomi ma è possibile specificare anche uno spazio dei nomi personalizzato.

  8. Nella pagina Passaggio 4: rivedi e crea, esamina la configurazione della regola di cache pull-through, quindi seleziona Crea.

  9. Ripeti il passaggio precedente per ogni cache pull-through da creare. Le regole della cache pull-through vengono create separatamente per ciascuna regione.

  1. Apri la ECR console Amazon all'indirizzo https://console.aws.amazon.com/ecr/.

  2. Dalla barra di navigazione, scegli la regione in cui configurare le impostazioni del registro privato.

  3. Nel pannello di navigazione, seleziona Private registry (Registro privato), Pull through cache (Cache pull-through).

  4. Nella pagina Pull through cache configuration (Configurazione della cache pull through), scegli Add rule (Aggiungi regola).

  5. Nella pagina Passaggio 1: specifica un'origine, procedi come segue.

    1. Per Registro seleziona Microsoft Azure Container Registry

    2. Per Registro di origine URL, specifica il nome del registro dei contenitori di Microsoft Azure e quindi scegli Avanti.

      Importante

      Poiché il suffisso .azurecr.io viene compilato per tuo conto, devi specificare solo il prefisso.

  6. Nella pagina Passaggio 2: configura l'autenticazione, per Credenziali Upstream devi archiviare le credenziali di autenticazione per Microsoft Azure Container Registry in un segreto di AWS Secrets Manager . Puoi specificare un segreto esistente o utilizzare la ECR console Amazon per crearne uno nuovo.

    1. Per utilizzare un segreto esistente, scegli Usa un AWS segreto esistente. Per Nome del segreto, utilizza il menu a discesa per selezionare il segreto esistente, quindi seleziona Avanti.

      Nota

      Visualizza AWS Management Console solo i segreti di Secrets Manager i cui nomi utilizzano il ecr-pullthroughcache/ prefisso. Il segreto, inoltre, deve trovarsi nello stesso account e nella stessa regione in cui è stata creata la regola di cache pull-through.

    2. Per creare un nuovo segreto, seleziona Crea un segreto di AWS , effettua le seguenti operazioni e seleziona Avanti.

      1. Per Nome del segreto specifica un nome descrittivo per il segreto. I nomi dei segreti devono contenere un numero di caratteri Unicode compreso tra 1 e 512.

      2. Per Nome utente di Microsoft Azure Container Registry, specifica il tuo nome utente per Microsoft Azure Container Registry.

      3. Per Token di accesso di Microsoft Azure Container Registry, specifica il tuo token di accesso per Microsoft Azure Container Registry. Per ulteriori informazioni sulla creazione di un token di accesso per Microsoft Azure Container Registry, consulta Creazione token - portale nella documentazione di Microsoft Azure.

  7. Nel passaggio 3: specifica una pagina di destinazione, per il prefisso del ECR repository Amazon, specifica lo spazio dei nomi del repository da utilizzare per la memorizzazione nella cache delle immagini estratte dal registro pubblico di origine, quindi scegli Avanti.

    Per impostazione predefinita, viene popolato uno spazio dei nomi ma è possibile specificare anche uno spazio dei nomi personalizzato.

  8. Nella pagina Passaggio 4: rivedi e crea, esamina la configurazione della regola di cache pull-through, quindi seleziona Crea.

  9. Ripeti il passaggio precedente per ogni cache pull-through da creare. Le regole della cache pull-through vengono create separatamente per ciascuna regione.

  1. Apri la ECR console Amazon all'indirizzo https://console.aws.amazon.com/ecr/.

  2. Dalla barra di navigazione, scegli la regione in cui configurare le impostazioni del registro privato.

  3. Nel pannello di navigazione, seleziona Private registry (Registro privato), Pull through cache (Cache pull-through).

  4. Nella pagina Pull through cache configuration (Configurazione della cache pull through), scegli Add rule (Aggiungi regola).

  5. Nel passaggio 1: specifica una pagina di origine, per Registro, scegli GitLab Container Registry, Avanti.

  6. Nella pagina Passaggio 2: Configurazione dell'autenticazione, per le credenziali Upstream, è necessario archiviare le credenziali di autenticazione per GitLab Container Registry in un luogo segreto. AWS Secrets Manager Puoi specificare un segreto esistente o utilizzare la ECR console Amazon per crearne uno nuovo.

    1. Per utilizzare un segreto esistente, scegli Usa un AWS segreto esistente. Per Nome del segreto, utilizza il menu a discesa per selezionare il segreto esistente, quindi seleziona Avanti. Per ulteriori informazioni sulla creazione di un segreto di Secrets Manager utilizzando la console di Secrets Manager, consulta Archiviazione segreta delle credenziali del repository originale AWS Secrets Manager.

      Nota

      Visualizza AWS Management Console solo i segreti di Secrets Manager i cui nomi utilizzano il ecr-pullthroughcache/ prefisso. Il segreto, inoltre, deve trovarsi nello stesso account e nella stessa regione in cui è stata creata la regola di cache pull-through.

    2. Per creare un nuovo segreto, seleziona Crea un segreto di AWS , effettua le seguenti operazioni e seleziona Avanti.

      1. Per Nome del segreto specifica un nome descrittivo per il segreto. I nomi dei segreti devono contenere un numero di caratteri Unicode compreso tra 1 e 512.

      2. Per il nome utente del GitLab Container Registry, specifica il tuo nome utente del GitLab Container Registry.

      3. Per il token di accesso al GitLab Container Registry, specifica il token di accesso al GitLab Container Registry. Per ulteriori informazioni sulla creazione di un token di accesso al GitLab Container Registry, consulta Token di accesso personali, token di accesso di gruppo o token di accesso al progetto nella documentazione. GitLab

  7. Nel passaggio 3: specifica una pagina di destinazione, per il prefisso del ECR repository Amazon, specifica lo spazio dei nomi del repository da utilizzare per la memorizzazione nella cache delle immagini estratte dal registro pubblico di origine, quindi scegli Avanti.

    Per impostazione predefinita, viene popolato uno spazio dei nomi ma è possibile specificare anche uno spazio dei nomi personalizzato.

  8. Nella pagina Passaggio 4: rivedi e crea, esamina la configurazione della regola di cache pull-through, quindi seleziona Crea.

  9. Ripeti il passaggio precedente per ogni cache pull-through da creare. Le regole della cache pull-through vengono create separatamente per ciascuna regione.

Per creare una regola di cache pull-through (AWS CLI)

Usa il AWS CLI comando create-pull-through-cache-rule per creare una regola pull through cache per un registro ECR privato Amazon. Per i registri upstream che richiedono l'autenticazione, devi archiviare le credenziali in un segreto di Secrets Manager. Per creare un segreto utilizzando la console Secrets Manager, vedereArchiviazione segreta delle credenziali del repository originale AWS Secrets Manager.

Gli esempi seguenti sono forniti per ogni registro upstream supportato.

L'esempio seguente crea una regola pull through cache per il registro Amazon ECR Public. Specifica un prefisso di ecr-public, che fa sì che ciascun repository creato utilizzando la regola della cache pull-through abbia lo schema di denominazione di ecr-public/upstream-repository-name.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix ecr-public \ --upstream-registry-url public.ecr.aws \ --region us-east-2

L'esempio seguente crea una regola di cache pull through per il registro pubblico Kubernetes. Specifica un prefisso di kubernetes, che fa sì che ciascun repository creato utilizzando la regola della cache pull-through abbia lo schema di denominazione di kubernetes/upstream-repository-name.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix kubernetes \ --upstream-registry-url registry.k8s.io \ --region us-east-2

L'esempio seguente crea una regola di cache pull-through per il registro pubblico Quay. Specifica un prefisso di quay, che fa sì che ciascun repository creato utilizzando la regola della cache pull-through abbia lo schema di denominazione di quay/upstream-repository-name.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix quay \ --upstream-registry-url quay.io \ --region us-east-2

L'esempio seguente crea una regola di cache pull-through per il registro Docker Hub. Specifica un prefisso di docker-hub, che fa sì che ciascun repository creato utilizzando la regola della cache pull-through abbia lo schema di denominazione di docker-hub/upstream-repository-name. Devi specificare il nome completo di Amazon Resource Name (ARN) del segreto contenente le credenziali del Docker Hub.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix docker-hub \ --upstream-registry-url registry-1.docker.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

L'esempio seguente crea una regola pull through cache per il GitHub Container Registry. Specifica un prefisso di docker-hub, che fa sì che ciascun repository creato utilizzando la regola della cache pull-through abbia lo schema di denominazione di github/upstream-repository-name. Devi specificare il nome completo di Amazon Resource Name (ARN) del segreto contenente le credenziali del GitHub Container Registry.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix github \ --upstream-registry-url ghcr.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

L'esempio seguente crea una regola pull through cache per il Microsoft Azure Container Registry. Specifica un prefisso di azure, che fa sì che ciascun repository creato utilizzando la regola della cache pull-through abbia lo schema di denominazione di azure/upstream-repository-name. È necessario specificare il nome completo di Amazon Resource Name (ARN) del segreto contenente le credenziali di Microsoft Azure Container Registry.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix azure \ --upstream-registry-url myregistry.azurecr.io \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

L'esempio seguente crea una regola pull through cache per il GitLab Container Registry. Specifica un prefisso di gitlab, che fa sì che ciascun repository creato utilizzando la regola della cache pull-through abbia lo schema di denominazione di gitlab/upstream-repository-name. Devi specificare il nome completo di Amazon Resource Name (ARN) del segreto contenente le credenziali del GitLab Container Registry.

aws ecr create-pull-through-cache-rule \ --ecr-repository-prefix gitlab \ --upstream-registry-url registry.gitlab.com \ --credential-arn arn:aws:secretsmanager:us-east-2:111122223333:secret:ecr-pullthroughcache/example1234 \ --region us-east-2

Passaggi successivi

Dopo aver creato le regole pull through cache, i passaggi successivi sono i seguenti: