Quiero usar la imagen de docker alojada en ECR y quiero automatizar la operación de extracción utilizando la plantilla de cloudformation.
Adjunté el rol de IAM con acceso completo de ECR a la instancia de ec2 y no funciona.
estoy haciendo docker pull 1234567897.dkr.ecr.us-west-2.amazonaws.com/repo:tag
y estoy recibiendo el error Error response from daemon: Get https://1234567897.dkr.ecr.us-west-2.amazonaws.com/repo:tag/manifests/latest: no basic auth credentials
Al usar ECR, EC2 y docker, aún debe hacer un docker login
.
En la ejecución de datos de usuario
aws ecr get-login --no-include-email > login.sh
bash login.sh
entonces deberías poder correr
docker pull ecr_registry/repo:tag
https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_AWSCLI.html
Si está ejecutando una instancia EC2 que ejecuta Windows, debe ejecutar el comando equivalente de Powershell de aws ecr get-login
que es
Invoke-Expression –Command (Get-ECRLoginCommand –Region region).Command
La respuesta aceptada es correcta, solo agregaré un ejemplo de una sola línea:
ejecutar:
$(aws ecr get-login --no-include-email)
y luego:
docker pull <ecr_host>/<repo>:<tag>