image
《Docker — 从入门到实践》 https://vuepress.mirror.docker-practice.com/basic_concept/image/
系统分为 内核 和 用户空间。
Docker 镜像(Image),就相当于是一个 root 文件系统。
layer
前一层是后一层的基础。
每一层构建完就不会再发生改变,后一层上的任何改变只发生在自己这一层。
比如,删除前一层文件的操作,实际不是真的删除前一层的文件,而是仅在当前层标记为该文件已删除。
虽然不会看到这个文件,但是实际上该文件会一直跟随镜像。
docker pull 也是一层一层下载的。
相同 层 只会保留一份,也就是层可以共享。
查看正式占用空间大小
sh
docker system dfls
docker image ls 列表中只会显示顶层镜像,如果想要看到更多,使用-a 参数。
sh
# 在 mongo:3.2 之后建立的镜像
docker image ls -f since=mongo:3.2
docker image ls -f before=mongo:3.2
# 通过 LABEL 来进行过滤
docker image ls -f label=com.example.version=0.1sh
docker image ls --format "{{.ID}}: {{.Repository}}"rm
sh
docker image rm [选项] <镜像1> [<镜像2> ...]commit
不建议使用
镜像的导入导出
sh
docker save alpine -o filename
docker save alpine | gzip > alpine-latest.tar.gzsh
docker load -i alpine-latest.tar.gz虚悬镜像
新就 镜像重名,就会出现
sh
$ docker image ls -f dangling=true
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> 00285df0df87 5 days ago 342 MB通过下面的命令删除
sh
$ docker image prune