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