docker镜像与容器的联系存储驱动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker镜像与容器的联系存储驱动相关的知识,希望对你有一定的参考价值。

2.1 docker镜像与容器的联系、存储驱动
什么是镜像?简单说,docker镜像是一个不包含Linux内核而又精简的Linux操作系统。
镜像从哪里来?Docker hub是由docker公司负责维护的公共注册中心,包含了大量的容器镜像,docker工具默认从这个公共镜像库下载镜像:
https://hub.docker.com/explore
默认是国外的源,下载会慢,建议配置国内镜像仓库:
[root@localhost ~]# vim /etc/docker/daemon.json

"registry-mirrors": ["https://registry.docker-cn.com"]

配置完成后重启docker:[root@localhost ~]# systemctl restart docker
重启完成后我们可以先下载个docker镜像尝试一下:
[root@localhost ~]# docker pull nginx

我们利用docker pull命令已经完成nginx镜像的下载,接下来我们用docker images来查看下我们已经下载的镜像:
[root@localhost ~]# docker images

如果我们需要下载一个nginx1.12版本的镜像,那么我们可以执行如下命令来完成:
[root@localhost ~]# docker pull nginx:1.12
接下来我们验证是不是下载了nginx1.12版本的镜像:
[root@localhost ~]# docker images

镜像与容器的联系:

镜像不是一个单一的文件,而是有多层构成。我们可以通过docker history<ID/NAME>查看镜像中各层内容及大小,每层对应着dockerfile中的一条指令。Centos的Docker镜像默认存储在/var/lib/docker/overlay2中。
[root@localhost overlay2]# docker history nginx

容器其实实在镜像的最上面加了一层读写层,在运行容器里做的任何文件改动,都会写到这个读写层。如果容器删除了,最上面的读写层也就删除了,改动也就丢失了。Docker使用存储驱动管理镜像每层内容及可读写的容器层。
存储驱动:

以上是关于docker镜像与容器的联系存储驱动的主要内容,如果未能解决你的问题,请参考以下文章

docker-dockerfile

Docker 镜像之存储管理

Docker镜像的构成__docker commit

docker入门之镜像管理基础

Docker:理解Docker镜像与容器

Docker镜像管理基础与基于容器的镜像制作示例