Вы можете использовать интерфейс командной строки AWS для создания репозиториев на лету и, возможно, поместить их в сценарий где-нибудь локально, если хотите.
aws --region REGION_NAME ecr create-repository --repository-name REPO_NAME --profile default
docker tag IMAGE_NAME AWS_ACCOUNT_ID.dkr.ecr.REGION_NAME.amazonaws.com/IMAGE_NAME
aws ecr get-login --no-include-email --region REGION_NAME --profile default
Это вернет логин с большим ключом в вашем терминале, скопируйтезатем вставьте его в свой терминал и нажмите «Ввод» (не самый лучший способ для обеспечения безопасности!)
docker push AWS_ACCOUNT_ID.dkr.ecr.REGION_NAME.amazonaws.com/IMAGE_NAME
После этого перейдите в ECR, найдите свой репозиторий и откройте его.Перейдите на вкладку «Разрешения», а затем примените политику, которая позволит другим ресурсам использовать ее, если вам нужно.
Что касается автоматического создания репо при отправке изменений?Вы можете создать репозиторий CodeCommit и добавить его в качестве триггера к изменению Codepipeline, которое будет выполнено, а затем настроить buildspec.yml для выполнения этих команд консоли AWS.