codebuildでdockerをビルドした時にrate limitsが表示された件
概要
2020年10月からdocker hubのリポジトリからpullする時に未ログインした状態でpullすると任意のIP単位で制限をかけるような仕様を追加した。
これを解決するにはdocker loginをするしかない。
また、code buildはawsのマネージドサービスで動いているため、数回動かしただけでrate limitsエラーが表示されてしまう。
このエラーを回避するためにはcode buildのbyildspec.yamlでコンテナをビルドする前にdocker loginをする必要がある。
詳しくは以下。
buildspec.yamlの例
変数はcode build経由で渡すなりsecret manager経由で渡すなり、セキュリティ要件とやりやすさを考えてやってもらえますと。
version: 0.2
phases:
install:
commands:
- echo install is nothing...
- AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query 'Account' --output text)
pre_build:
commands:
- echo Logging in to Amazon ECR...
- aws ecr get-login-password --region $AWS_DEFAULT_REGION | docker login --username AWS --password-stdin $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com
- echo ${DOCKER_HUB_PASSWORD} | docker login -u ${DOCKER_HUB_ID} --password-stdin
build:
commands:
- echo build docker image
- docker build -t $CONTAINER_IMAGE .
- docker tag $CONTAINER_IMAGE_REPO_NAME:$CONTAINER_IMAGE_TAG $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$CONTAINER_IMAGE_REPO_NAME:$CONTAINER_IMAGE_TAG
post_build:
commands:
- echo todo is nothing...
- docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$CONTAINER_IMAGE_REPO_NAME:$CONTAINER_IMAGE_TAG
Author And Source
この問題について(codebuildでdockerをビルドした時にrate limitsが表示された件), 我々は、より多くの情報をここで見つけました https://qiita.com/ego/items/ca824f744e38ab8acf82著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .