Docker Imageのtag listをCLIで取得するための手順。
なぜ
Docker Hub上での目視確認が辛いため。 例えば、PHP Docker Hubなんかは、Imageの種類が多すぎて視認性が悪いと思う。
やること
例: phpのImageを探す
## 要jq
curl -s https://registry.hub.docker.com/v1/repositories/php/tags |jq '.[].name' |grep 7.1.5
## 結果
7.1.5
7.1.5-alpine
7.1.5-apache
7.1.5-cli
7.1.5-fpm
7.1.5-fpm-alpine
7.1.5-zts
7.1.5-zts-alpine
jqなしで頑張るなら
curl -s https://registry.hub.docker.com/v1/repositories/php/tags | sed -e 's/[][]//g' -e 's/"//g' -e 's/ //g' | tr '}' '\n' | awk -F: '{print $3}' |grep 7.1.5
shell script化するなら
docker-tags() {
image="$1"
tags=`curl -s https://registry.hub.docker.com/v1/repositories/${image}/tags |jq '.[].name'`
if [ -n "$2" ]; then
tags=` echo "${tags}" | grep "$2" `
fi
echo "${tags}"
}
参考
How to list all tags for a Docker image on a remote registry? - Stack Overflow