LoginSignup
0
0

More than 1 year has passed since last update.

Azure DevOpsのAzure PipelinesでDockerのイメージPullにmirror.gcr.ioを使う方法

Posted at

概要

既報の通りDocker HubはイメージのPullのrate limitを開始しており、Azure PipelinesでDockerイメージをビルドする際にもこの影響を受けるようになる。
※ AzureのIPアドレスからのDocker Hubへのアクセスは2022年6月30日まではrate limitが適用されていないようであるためこの課題に気づきづらいが、その日時を過ぎるとrate limitされるようになる。

GCPはDocker Hubのよくアクセスされるイメージをmirror.gcr.ioでミラーしており、そこからイメージをPullすることでrate limitを回避できるようになるので、Azure Pipelinesでその設定をする方法を紹介する。

Azure Pipelinesでmirror.gcr.ioを使うようにする設定方法

設定方法はGCPサイトのPulling cached Docker Hub imagesに書かれているとおりで、Dockerデーモンの設定ファイル/etc/docker/daemon.jsonに対して"registry-mirrors": ["https://mirror.gcr.io"]を追加し、Dockerデーモンを再起動すればよい。

Azure Pipelines エージェント(ビルドを実行するエージェント)がUbuntuの場合、Azure PipelinesでDockerタスクを実行するより前のステップで以下のコードを入れれば良い。

steps:
  - script: |
      cat /etc/docker/daemon.json | jq --arg mirror "https://mirror.gcr.io" '. + {"registry-mirrors": [$mirror]}' | sudo tee /etc/docker/daemon.json
      sudo systemctl restart docker
    displayName: update Docker settings to use mirror.gcr.io

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0