一.什么是Docker的镜像
Docker的镜像是一个模板,或者说其是一个只读文件。在该模板中包含应用和应用运行时所需要的依赖环境。Docker的镜像采用的是分层的文件系统,每一次对镜像的修改将以“读写层”的形式增加到原来的只读文件的模板上。
图1以下展示了Docker镜像的分层结构。下面进行介绍。
1.内核(bootfs):用来加载 Linux的内核以启动Linux环境。Docker 的用户不会与这一层直接打交道。
2.根镜像:可以将其理解成操作系统,图1中的根镜像使用的是 CentOS。
在根镜像之上就是叠加的每一层应用,图1中的MySQL、Tomcat 等。另外,在物理存储上,镜像的本质其实是磁盘上一系列文件的集合,如图2所示。
Docker 默认的镜像存储路径是“/var/lib/docker",也可以自定义其他路径。
在实际生产环境中,Docker默认的镜像存储路径往往不能满足磁盘空间大小的要求。可以根据以下步骤来修改这个存储路径。
1.查看镜像存储的目录
[root@jia ~]# docker info | grep "Docker Root Dir"
2.创建新的存储镜像目录
[root@jia docker]# mkdir -p /data/docker
3.切换到、/etc/docker创建后缀为.json的文件
[root@jia docker]# cd /etc/docker/
[root@jia docker]# vim jiayi.json
{
"graph":"/data/docker"
}
4.重新加载docker服务和重启docker
[root@jia ~]# systemctl daemon-reload
[root@jia ~]# systemctl restart docker
5.再次查看镜像的存储目录
[root@jia ~]# docker info | grep "Docker Root Dir"