docker镜像查询操作
- 命令格式:
docker search [OPTIONS] TERM
- 命令参数:
- -f,--filter filer 根据提供的格式筛选结果
- --format string 利用Go语言的format格式化输出结果
- --limit int 展示最大结果数,默认25个
- --no-trunc 显示所有的描述信息
运用示例
查询线上centos
docker search centos
| NAME | description | STARS | OFFICIAL | AUTOMATED |
|---|
- NAME:名称
- DISCRIPTION: 描述
- STARS:相当于GitHub的点赞
- OFFICIAL:是否是官方镜像
- AUTOMATED:是否是docker file
筛选官方镜像docker search -f is-official=true 镜像名称
分页docker search -f is-official=true --limit 20 cent
注意这里的分页和我们的正常的思维不一样,他会先进行分页再进行过滤
下载镜像到本地
docker pull 镜像名称:版本号 默认是latest
查询本地镜像
docker images或者docker images ls
删除本地镜像
docker rmi或者docker image rm
删除可以一次性删除多个镜像用空格隔开就行
- 命令参数
- -f,--force 强制删除不管镜像是否有容器
镜像导出
运用场景:如果有新同事来了,重新下载镜像会比较耗时,可以将自己的镜像环境导出,新同事直接导入即可.可以同时导出多个,用空格隔开.
docker save centos centos:7 ubuntu 13b66b487594 > linux.tar
或者
docker save centos centos:7 ubuntu 13b66b487594 -o linux.tar
这里的13b66b487594是IMAGE ID 字段相当于指纹,最好是指定好版本号不然导入的时候会丢失版本号和名称,如果丢失可以使用镜像重命名,包括上面的删除可以使用IMAGE ID,但是得确保IMAGE ID是唯一的,不然删除会报错
命令运行完成之后使用ls可以查看到生成的linux.tar文件
镜像导入
docker load -i linux.tar
- -i,--input string 指定要打入的文件,如没有指定,默认是STDIN
- -q,--quite 不打印导入过程信息
镜像重命名
对本地镜像的NAME、TAG进行重命名,并新产生一个命名后镜像
这里的重命名是新增一个镜像,是对源镜像的引用,不会删除原来的镜像,只是新增了一个name与TAG不一样的镜像,如果说name与tag都为<none>需要借助IMAGE ID来进行修改,此时使用tag命令会进行覆盖,而不是新增一个引用
docker tag 名称或者IMAGE_ID 名称 版本
查看镜像详细信息
docker image inspect 镜像名或者docker inspect 镜像名
如果你要查看镜像详细信息两个都可以用,但是docker inspect还可以查看容器的详细信息,如果需要区别查看的话就需要加上image
- -f,--format string 利用特定Go语言的format格式输出结果
结果搜索
- 利用Linux的管道符搜索
docker image inspect 镜像 | grep 字符串 - 利用Go语言的format
docker image inspect -f {{json .属性}} 镜像
镜像历史信息
docker history 镜像
- -H,--human 将创建时间、大小进行优化打印(默认为true)
- -q,--quiet 只显示镜像ID
- --no-trunc 不缩略显示