DockerHubのイメージのタグ一覧をコマンドで取得する

docker コマンドでタグを指定せずにコンテナイメージをpullすると、latestタグのイメージがDockerHubからダウンロードされますが、他のタグのイメージをダウンロードしようとした場合、存在するタグ一覧をdockerコマンドで確認できず不便です。

そのため、curlコマンドを使ってDockerHubのレジストリのAPIを直に叩いて情報を取得する方法を紹介します。以下は、centosのタグ取得例です。

$ curl -s https://registry.hub.docker.com/v1/repositories/centos/tags | sed "s/,/\n/g" | grep name | cut -d '"' -f 4
latest
5
5.11
6
6.6
6.7
7
7.0.1406
7.1.1503
7.2.1511
centos5
centos5.11
centos6
centos6.6
centos6.7
centos7
centos7.0.1406
centos7.1.1503

 

毎回コマンドを叩くのは大変ならば、.bashrc 等に以下を記述しておけば、運用が楽になります。

function docker-taglist {
    curl -s https://registry.hub.docker.com/v1/repositories/$1/tags | sed "s/,/\n/g" | grep name | cut -d '"' -f 4
}

 

もちろん実行結果は同じです。

$ docker-taglist centos
latest
5
5.11
6
6.6
6.7
7
7.0.1406
7.1.1503
7.2.1511
centos5
centos5.11
centos6
centos6.6
centos6.7
centos7
centos7.0.1406
centos7.1.1503
タイトルとURLをコピーしました