DockerHub から Docker イメージをプルするときの Rate Limit の残りを確認する機会があったので、手順を残しておきます。内容は How can I check my current rate | Docker Documentation を参照しました。docker pull の Rate Limits について詳しくは Increase Rate Limits | Docker を参照。
未ログイン状態の Rate Limit 残りを確認
以下のコマンドでトークンを取得し、変数に入れます。jq
コマンドが必要ですので Download jq を参考に事前にインストールしておきます。
TOKEN=$(curl "https://auth.docker.io/token?service=registry.docker.io&scope=repository:ratelimitpreview/test:pull" | jq -r .token)
以下のコマンドで Rate Limits の残りを確認します。
curl --head -H "Authorization: Bearer $TOKEN" https://registry-1.docker.io/v2/ratelimitpreview/test/manifests/latest
実行結果です。ratelimit-remaining: 96
と表示されており、残りが 96 であることが分かります。
ratelimit-limit: 100;w=21600
ratelimit-remaining: 96;w=21600
docker-ratelimit-source: xxx.xxx.xxx.xxx
最初のトークン取得のコマンドで RateLimit の残りが 1 減ることにご注意ください。
ログイン状態の Rate Limit 残りを確認
以下のコマンドでトークンを取得し、変数に入れます。--user 'username:password'
のところは、ご自身の DockerHub のユーザ名とアクセストークンに置き換えてください。
TOKEN=$(curl --user 'username:password' "https://auth.docker.io/token?service=registry.docker.io&scope=repository:ratelimitpreview/test:pull" | jq -r .token)
以下のコマンドで Rate Limit の残りを確認します。
curl --head -H "Authorization: Bearer $TOKEN" https://registry-1.docker.io/v2/ratelimitpreview/test/manifests/latest
実行結果です。
ratelimit-limit: 200;w=21600
ratelimit-remaining: 176;w=21600
docker-ratelimit-source: xxx.xxx.xxx.xxx