Creación de una regla de extracción de caché en Amazon ECR - Amazon ECR

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Creación de una regla de extracción de caché en Amazon ECR

Para cada registro ascendente que contenga imágenes que desee almacenar en caché en su registro privado de Amazon ECR, debe crear una regla de extracción de caché.

En el caso de los registros anteriores que requieren autenticación, debe almacenar las credenciales en un secreto de Secrets Manager. Puede usar un secreto existente de o crear uno nuevo. Puede crear el secreto de Secrets Manager en la consola Amazon ECR o en la consola Secrets Manager. Para crear un secreto de Secrets Manager mediante la consola Secrets Manager en lugar de la consola Amazon ECR, consulteAlmacenar en secreto las credenciales del repositorio principal AWS Secrets Manager.

Requisitos previos

  • Compruebe que dispone de los permisos de IAM adecuados para crear reglas de extracción de caché. Para obtener más información, consulte Se requieren permisos de IAM para sincronizar un registro ascendente con un registro privado de Amazon ECR.

  • Para los registros anteriores que requieren autenticación: si desea utilizar un secreto existente, compruebe que el secreto de Secrets Manager cumpla los siguientes requisitos:

    • El nombre del secreto comienza por. ecr-pullthroughcache/ AWS Management Console Solo muestra los secretos de Secrets Manager con el ecr-pullthroughcache/ prefijo.

    • La cuenta y la región en las que se encuentra el secreto deben coincidir con la cuenta y la región en las que se encuentra la regla de extracción de caché.

Para crear una regla de caché de extracción (AWS Management Console)

Los siguientes pasos muestran cómo crear una regla de caché de extracción y un secreto de Secrets Manager mediante la consola de Amazon ECR. Para crear un secreto mediante la consola Secrets Manager, consulteAlmacenar en secreto las credenciales del repositorio principal AWS Secrets Manager.

  1. Abra la consola de Amazon ECR en https://console.aws.amazon.com/ecr/.

  2. Desde la barra de navegación, elija la región en la que desea configurar su registro privado.

  3. En el panel de navegación, elija Private registry (Registro privado), Pull through cache (Caché de extracción).

  4. En la página Pull through cache configuration(Configuración de caché de extracción), elija Add rule (Agregar regla).

  5. En la página del Paso 1: Especificar un origen, en Registro, elija Amazon ECR Public, Kubernetes o Quay de la lista de registros principales y, a continuación, elija Siguiente.

  6. En la página del Paso 2: Especificar un destino, en Prefijo del repositorio de Amazon ECR, especifique el prefijo del espacio de nombres del repositorio que se utilizará al almacenar en caché las imágenes extraídas del registro público de origen y, a continuación, seleccione Siguiente. De forma predeterminada, se rellena un espacio de nombres pero también se puede especificar un espacio de nombres personalizado.

  7. En la página del Paso 3: Revisar y crear, revise la configuración de la regla de caché de extracción y, a continuación, seleccione Crear.

  8. Repita el paso anterior para cada caché de extracción que desee crear. Las reglas de caché de extracción se crean por separado para cada región.

  1. Abra la consola de Amazon ECR en https://console.aws.amazon.com/ecr/.

  2. Desde la barra de navegación, elija la región en la que desea configurar su registro privado.

  3. En el panel de navegación, elija Private registry (Registro privado), Pull through cache (Caché de extracción).

  4. En la página Pull through cache configuration(Configuración de caché de extracción), elija Add rule (Agregar regla).

  5. En la página del Paso 1: Especificar un origen, en Registro, elija Docker Hub, Siguiente.

  6. En la página del Paso 2: Configurar la autenticación, en Credenciales principales, debe almacenar las credenciales de autenticación de Docker Hub en un secreto de AWS Secrets Manager . Puede especificar un secreto existente o utilizar la consola Amazon ECR para crear uno nuevo.

    1. Para usar un secreto existente, selecciona Usar un AWS secreto existente. En Nombre secreto, usa el menú desplegable para seleccionar tu secreto existente y, a continuación, selecciona Siguiente.

      nota

      AWS Management Console Solo muestra los secretos de Secrets Manager con nombres que usan el ecr-pullthroughcache/ prefijo. El secreto también debe estar en la misma cuenta y región en las que se creó la regla de caché de extracción.

    2. Para crear un secreto nuevo, selecciona Crear un AWS secreto, haz lo siguiente y, a continuación, selecciona Siguiente.

      1. En Nombre secreto, especifique un nombre descriptivo para el secreto. Los nombres de los secretos deben contener de 1 a 512 caracteres Unicode.

      2. En el nombre de usuario de Docker Hub, especifique su nombre de usuario de Docker Hub.

      3. Para el token de acceso a Docker Hub, especifique su token de acceso a Docker Hub. Para obtener más información sobre cómo crear un token de acceso de Docker Hub, consulta Crear y administrar los tokens de acceso en la documentación de Docker.

  7. En la página del Paso 3: Especificar un destino, para Prefijo del repositorio de Amazon ECR, especifique el prefijo del espacio de nombres del repositorio que se utilizará al almacenar en caché las imágenes extraídas del registro público de origen y, a continuación, seleccione Siguiente.

    De forma predeterminada, se rellena un espacio de nombres pero también se puede especificar un espacio de nombres personalizado.

  8. En la página del Paso 4: Revisar y crear, revise la configuración de la regla de caché de extracción y, a continuación, seleccione Crear.

  9. Repita el paso anterior para cada caché de extracción que desee crear. Las reglas de caché de extracción se crean por separado para cada región.

  1. Abra la consola de Amazon ECR en https://console.aws.amazon.com/ecr/.

  2. Desde la barra de navegación, elija la región en la que desea configurar su registro privado.

  3. En el panel de navegación, elija Private registry (Registro privado), Pull through cache (Caché de extracción).

  4. En la página Pull through cache configuration(Configuración de caché de extracción), elija Add rule (Agregar regla).

  5. En el paso 1: especifique una página de origen, en Registro, elija GitHub Container Registry, Siguiente.

  6. En la página Paso 2: Configurar la autenticación, en el caso de las credenciales de Upstream, debe guardar en AWS Secrets Manager secreto las credenciales de autenticación de GitHub Container Registry. Puede especificar un secreto existente o utilizar la consola Amazon ECR para crear uno nuevo.

    1. Para usar un secreto existente, selecciona Usar un AWS secreto existente. En Nombre secreto, usa el menú desplegable para seleccionar tu secreto existente y, a continuación, selecciona Siguiente.

      nota

      AWS Management Console Solo muestra los secretos de Secrets Manager con nombres que usan el ecr-pullthroughcache/ prefijo. El secreto también debe estar en la misma cuenta y región en las que se creó la regla de caché de extracción.

    2. Para crear un secreto nuevo, selecciona Crear un AWS secreto, haz lo siguiente y, a continuación, selecciona Siguiente.

      1. En Nombre secreto, especifique un nombre descriptivo para el secreto. Los nombres de los secretos deben contener de 1 a 512 caracteres Unicode.

      2. Como nombre de usuario de GitHub Container Registry, especifique su nombre de usuario de GitHub Container Registry.

      3. Para el token de acceso a GitHub Container Registry, especifique su token de acceso a GitHub Container Registry. Para obtener más información sobre cómo crear un token de GitHub acceso, consulta Administrar tus tokens de acceso personales en la GitHub documentación.

  7. En la página del Paso 3: Especificar un destino, para Prefijo del repositorio de Amazon ECR, especifique el prefijo del espacio de nombres del repositorio que se utilizará al almacenar en caché las imágenes extraídas del registro público de origen y, a continuación, seleccione Siguiente.

    De forma predeterminada, se rellena un espacio de nombres pero también se puede especificar un espacio de nombres personalizado.

  8. En la página del Paso 4: Revisar y crear, revise la configuración de la regla de caché de extracción y, a continuación, seleccione Crear.

  9. Repita el paso anterior para cada caché de extracción que desee crear. Las reglas de caché de extracción se crean por separado para cada región.

  1. Abra la consola de Amazon ECR en https://console.aws.amazon.com/ecr/.

  2. Desde la barra de navegación, elija la región en la que desea configurar su registro privado.

  3. En el panel de navegación, elija Private registry (Registro privado), Pull through cache (Caché de extracción).

  4. En la página Pull through cache configuration(Configuración de caché de extracción), elija Add rule (Agregar regla).

  5. En la página del Paso 1: Especificar un origen, haga lo siguiente.

    1. Para Registry, elija Microsoft Azure Container Registry

    2. En URL del registro de origen, especifique el nombre de Microsoft Azure Container Registry y, a continuación, elija Siguiente.

      importante

      Solo necesita especificar el prefijo, ya que el .azurecr.io sufijo se rellena en su nombre.

  6. En la página del Paso 2: Configurar la autenticación, en Credenciales principales, debe almacenar las credenciales de autenticación de Microsoft Azure Container Registry en un secreto de AWS Secrets Manager . Puede especificar un secreto existente o utilizar la consola Amazon ECR para crear uno nuevo.

    1. Para usar un secreto existente, selecciona Usar un AWS secreto existente. En Nombre secreto, usa el menú desplegable para seleccionar tu secreto existente y, a continuación, selecciona Siguiente.

      nota

      AWS Management Console Solo muestra los secretos de Secrets Manager con nombres que usan el ecr-pullthroughcache/ prefijo. El secreto también debe estar en la misma cuenta y región en las que se creó la regla de caché de extracción.

    2. Para crear un secreto nuevo, selecciona Crear un AWS secreto, haz lo siguiente y, a continuación, selecciona Siguiente.

      1. En Nombre secreto, especifique un nombre descriptivo para el secreto. Los nombres de los secretos deben contener de 1 a 512 caracteres Unicode.

      2. Para el nombre de usuario de Microsoft Azure Container Registry, especifique su nombre de usuario de Microsoft Azure Container Registry.

      3. Para el nombre de usuario de Microsoft Azure Container Registry, especifique su nombre de usuario de Microsoft Azure Container Registry. Para obtener más información sobre la creación de un token de acceso a Microsoft Azure Container Registry, consulte Crear token: portal en la documentación de Microsoft Azure.

  7. En la página del Paso 3: Especificar un destino, para Prefijo del repositorio de Amazon ECR, especifique el prefijo del espacio de nombres del repositorio que se utilizará al almacenar en caché las imágenes extraídas del registro público de origen y, a continuación, seleccione Siguiente.

    De forma predeterminada, se rellena un espacio de nombres pero también se puede especificar un espacio de nombres personalizado.

  8. En la página del Paso 4: Revisar y crear, revise la configuración de la regla de caché de extracción y, a continuación, seleccione Crear.

  9. Repita el paso anterior para cada caché de extracción que desee crear. Las reglas de caché de extracción se crean por separado para cada región.

  1. Abra la consola de Amazon ECR en https://console.aws.amazon.com/ecr/.

  2. Desde la barra de navegación, elija la región en la que desea configurar su registro privado.

  3. En el panel de navegación, elija Private registry (Registro privado), Pull through cache (Caché de extracción).

  4. En la página Pull through cache configuration(Configuración de caché de extracción), elija Add rule (Agregar regla).

  5. En el paso 1: especifique una página de origen, en Registro, elija GitLab Container Registry, Siguiente.

  6. En la página Paso 2: Configurar la autenticación, en el caso de las credenciales de Upstream, debe guardar en AWS Secrets Manager secreto las credenciales de autenticación de GitLab Container Registry. Puede especificar un secreto existente o utilizar la consola Amazon ECR para crear uno nuevo.

    1. Para usar un secreto existente, selecciona Usar un AWS secreto existente. En Nombre secreto, usa el menú desplegable para seleccionar tu secreto existente y, a continuación, selecciona Siguiente. Para obtener más información sobre la creación de un secreto de Secrets Manager mediante la consola de Secrets Manager, consulteAlmacenar en secreto las credenciales del repositorio principal AWS Secrets Manager.

      nota

      AWS Management Console Solo muestra los secretos de Secrets Manager con nombres que usan el ecr-pullthroughcache/ prefijo. El secreto también debe estar en la misma cuenta y región en las que se creó la regla de caché de extracción.

    2. Para crear un secreto nuevo, selecciona Crear un AWS secreto, haz lo siguiente y, a continuación, selecciona Siguiente.

      1. En Nombre secreto, especifique un nombre descriptivo para el secreto. Los nombres de los secretos deben contener de 1 a 512 caracteres Unicode.

      2. Como nombre de usuario de GitLab Container Registry, especifique su nombre de usuario de GitLab Container Registry.

      3. Para el token de acceso a GitLab Container Registry, especifique su token de acceso a GitLab Container Registry. Para obtener más información sobre cómo crear un token de acceso a GitLab Container Registry, consulta los tokens de acceso personal, los tokens de acceso grupal o los tokens de acceso a proyectos en la GitLab documentación.

  7. En la página del Paso 3: Especificar un destino, para Prefijo del repositorio de Amazon ECR, especifique el prefijo del espacio de nombres del repositorio que se utilizará al almacenar en caché las imágenes extraídas del registro público de origen y, a continuación, seleccione Siguiente.

    De forma predeterminada, se rellena un espacio de nombres pero también se puede especificar un espacio de nombres personalizado.

  8. En la página del Paso 4: Revisar y crear, revise la configuración de la regla de caché de extracción y, a continuación, seleccione Crear.

  9. Repita el paso anterior para cada caché de extracción que desee crear. Las reglas de caché de extracción se crean por separado para cada región.

Para crear una regla de caché de extracción (AWS CLI)

Utilice el AWS CLI comando create-pull-through-cache-rule para crear una regla de extracción de caché para un registro privado de Amazon ECR. En el caso de los registros originales que requieren autenticación, debe almacenar las credenciales en un secreto de Secrets Manager. Para crear un secreto mediante la consola Secrets Manager, consulteAlmacenar en secreto las credenciales del repositorio principal AWS Secrets Manager.

Se proporcionan los siguientes ejemplos para cada registro ascendente compatible.

En el siguiente ejemplo se crea una regla de caché de extracción para el registro público de Amazon ECR. Especifica un prefijo de repositorio ecr-public, lo que da como resultado que cada repositorio se cree mediante la regla de caché de extracción para tener el esquema de nomenclatura de 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

En el siguiente ejemplo se crea una regla de extracción de caché para el registro público de Kubernetes. Especifica un prefijo de repositorio kubernetes, lo que da como resultado que cada repositorio se cree mediante la regla de caché de extracción para tener el esquema de nomenclatura de 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

El siguiente ejemplo crea una regla de extracción de caché para el registro público de Quay. Especifica un prefijo de repositorio quay, lo que da como resultado que cada repositorio se cree mediante la regla de caché de extracción para tener el esquema de nomenclatura de quay/upstream-repository-name.

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

El siguiente ejemplo crea una regla de caché de extracción para el registro de Docker Hub. Especifica un prefijo de repositorio docker-hub, lo que da como resultado que cada repositorio se cree mediante la regla de caché de extracción para tener el esquema de nomenclatura de docker-hub/upstream-repository-name. Debe especificar el nombre de recurso de Amazon (ARN) completo del secreto que contiene las credenciales de 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

En el siguiente ejemplo, se crea una regla de extracción de caché para el registro de GitHub contenedores. Especifica un prefijo de repositorio docker-hub, lo que da como resultado que cada repositorio se cree mediante la regla de caché de extracción para tener el esquema de nomenclatura de github/upstream-repository-name. Debe especificar el nombre de recurso de Amazon (ARN) completo del secreto que contiene sus credenciales de 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

En el siguiente ejemplo, se crea una regla de extracción de caché para Microsoft Azure Container Registry. Especifica un prefijo de repositorio azure, lo que da como resultado que cada repositorio se cree mediante la regla de caché de extracción para tener el esquema de nomenclatura de azure/upstream-repository-name. Debe especificar el nombre de recurso de Amazon (ARN) completo del secreto que contiene las credenciales de 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

En el siguiente ejemplo, se crea una regla de extracción de caché para el registro de GitLab contenedores. Especifica un prefijo de repositorio gitlab, lo que da como resultado que cada repositorio se cree mediante la regla de caché de extracción para tener el esquema de nomenclatura de gitlab/upstream-repository-name. Debe especificar el nombre de recurso de Amazon (ARN) completo del secreto que contiene sus credenciales de 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

Siguientes pasos

Tras crear las reglas de caché de extracción, los siguientes pasos son los siguientes: