The native docker
command has an excellent way to search the docker hub repository for an image. Just use docker search <search string>
to look in their registry.
# docker search debian
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
ubuntu Ubuntu is a Debian-based Linux operating s... 2338 [OK]
debian Debian is a Linux distribution that's comp... 763 [OK]
google/debian 47 [OK]
neurodebian NeuroDebian provides neuroscience research... 12 [OK]
jesselang/debian-vagrant Stock Debian Images made Vagrant-friendly ... 4 [OK]
eboraas/debian Debian base images, for all currently-avai... 3 [OK]
armbuild/debian ARMHF port of debian 3 [OK]
mschuerig/debian-subsonic Subsonic 5.1 on Debian/wheezy. 3 [OK]
fike/debian-postgresql PostgreSQL 9.4 until 9.0 version running D... 2 [OK]
maxexcloo/debian Docker base image built on Debian with Sup... 1 [OK]
kalabox/debian 1 [OK]
takeshi81/debian-wheezy-php Debian wheezy based PHP repo. 1 [OK]
webhippie/debian Docker images for debian 1 [OK]
eeacms/debian Docker image for Debian to be used with EE... 1 [OK]
reinblau/debian Debian with usefully default packages for ... 1 [OK]
mariorez/debian Debian Containers for PHP Projects 0 [OK]
opennsm/debian Lightly modified Debian images for OpenNSM 0 [OK]
konstruktoid/debian Debian base image 0 [OK]
visono/debian Docker base image of debian 7 with tools i... 0 [OK]
nimmis/debian This is different version of Debian with a... 0 [OK]
pl31/debian Basic debian image 0 [OK]
idcu/debian mini debian os 0 [OK]
sassmann/debian-chromium Chromium browser based on debian 0 [OK]
sassmann/debian-firefox Firefox browser based on debian 0 [OK]
cloudrunnerio/debian 0 [OK]
We can see the official debian repository right at the top. Unfortunately there’s no way to see what tags
and images
are available for us to pull
down and deploy. However, there is a way to query the registry for all the tags in a repository, returned in JSON format. You can use a higher level programming language to get the list and parse the JSON for you. Or you can just use a simple one-liner:
# wget -q https://registry.hub.docker.com/v1/repositories/debian/tags -O - | sed -e 's/[][]//g' -e 's/"//g' -e 's/ //g' | tr '}' '\n' | awk -F: '{print $3}'
latest
6
6.0
6.0.10
6.0.8
6.0.9
7
7.3
7.4
7.5
7.6
7.7
7.8
7.9
8
8.0
8.1
8.2
experimental
jessie
jessie-backports
oldstable
oldstable-backports
rc-buggy
sid
squeeze
stable
stable-backports
stretch
testing
unstable
wheezy
wheezy-backports
Wrap that in a little bash script and you have an easy way to list the tags
of a repository. Since a tag
is just a pointer to a image
commit
multiple tags
can point to the same image. Get fancy:
# wget -q https://registry.hub.docker.com/v1/repositories/debian/tags -O - | sed -e 's/[][]//g' -e 's/"//g' -e 's/ //g' | tr '}' '\n' | sed -e 's/^,//' | sort -t: -k2 | awk -F[:,] 'BEGIN {i="image";j="tags"}{if(i!=$2){print i" : "j; i=$2;j=$4}else{j=$4" | "j} }END{print i" : "j}'
image : tags
06af7ad6 : 7.5
19de96c1 : wheezy | 7.9 | 7
1aa59f81 : experimental
20096d5a : rc-buggy
315baabd : stable
37cbf6c3 : testing
47921512 : 7.7
4a5e6db8 : 8.1
4fbc238a : oldstable-backports
52cb7765 : wheezy-backports
84bd6e50 : unstable
88dc7f13 : jessie-backports
8c00acfb : latest | jessie | 8.2 | 8
91238ddc : stretch
b2477d24 : stable-backports
b5fe16f2 : 7.3
bbe78c1a : 7.8
bd4b66c4 : oldstable
c952ddeb : squeeze | 6.0.10 | 6.0 | 6
d56191e1 : 6.0.8
df2a0347 : 8.0
e565fbbc : 7.4
e7d52d7d : sid
feb75584 : 7.6
fee2ea4e : 6.0.9
For private repos that require oauth authentication, you can use this script to list tags sorted in descending order
http://stackoverflow.com/a/38277663/2765671