鉴于昨天docker pull mysql自动安装了最终版(latest)的导致无法使用,后面才找到docker pull mysql:5.7.22可以下载5.7.22版的,但是怎么知道有这个tag版本存在呢?搜索docker check all version of an image找到如下代码,可在/usr/local/bin/目录下 touch dockertags,然后放入下面的代码,再chmod +x dockertags 赋予其运行的权限,然后dockertags mysql即可查看到不同tag的mysql了。

dockertags查看镜像对应的所有tag,dockertags命令程序需要自己创建。

1
dockertags mysql

#!/bin/bash

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
if [ $# -lt 1 ]
then
cat << HELP

dockertags -- list all tags for a Docker image on a remote registry.

EXAMPLE:
- list all tags for ubuntu:
dockertags ubuntu

- list all php tags containing apache:
dockertags php apache

HELP
fi

image="$1"
tags=`wget -q https://registry.hub.docker.com/v1/repositories/${image}/tags -O - | sed -e 's/[][]//g' -e 's/"//g' -e 's/ //g' | tr '}' '\n' | awk -F: '{print $3}'`

if [ -n "$2" ]
then
tags=` echo "${tags}" | grep "$2" `
fi

echo "${tags}"