在从ECR提取图像之前如何登录AWS ?



我从ECR将图像拉入管道。首先,我需要验证使用eval $(aws ecr get-login --region eu-west-2 --no-include-email | sed 's|https://||')

然而,我不知道如何在CI工作流中使用它,因为这应该运行在提取图像之前:

e2e:
stage: test
image: 2xxxxxxxxxxxxx8.dkr.ecr.eu-west-2.amazonaws.com/training-users_db
services:
- postgres:12.2-alpine
variables:
AWS_ACCOUNT_ID: $AWS_ACCOUNT_ID
AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
AWS_SECRET_KEY: $AWS_SECRET_ACCESS_KEY
POSTGRES_DB: users
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
DATABASE_TEST_URL: postgres://postgres:postgres@postgres:5432/users
FLASK_ENV: development
SECRET_KEY: $SECRET_KEY
script:
- eval $(aws ecr get-login --region eu-west-2 --no-include-email | sed 's|https://||')

如何在提取图像之前登录ECR ?

这是我找到的最接近的文档:https://mherman.org/blog/gitlab-ci-private-docker-registry/但我还没能让它像描述的那样工作。当它试图提取我的图像时,我仍然会得到一些身份验证错误。我开了一张技术支持单来解决这个问题,但也许你能把它修好?

最新更新