docker镜像

什么是镜像:
Docker镜像是一个不包含linux内核而又精简的linux 操作系统
镜像来源:
Docker Hub 是由Docker公司负责维护的公共的注册中心,包含大量的镜像,Docker工具默认从这个公共镜像库下载镜像
https://hub.docker.com/explore,默认是国外源,可以使用国内的源,提高下载速度:

创建或修改 /etc/docker/daemon.json 文件

# vi /etc/docker/daemon.json
{
    "registry-mirrors": ["https://registry.docker-cn.com"]
}
systemctl restart docker.service

FOR EXAMPLE
     Docker中国区官方镜像
     https://registry.docker-cn.com

                 网易
                 http://hub-mirror.c.163.com

                 中国科技大学
                 https://docker.mirrors.ustc.edu.cn

                 阿里云容器服务
                 https://cr.console.aliyun.com/

工作过程:
启动一个新的容器时,Docker会加载只读镜像,并在其之上添加一个读写层,并将镜像中的目录复制一份到/var/lib/docker/aufs/mnt/容器id目录下,
我们可以chroot进入此目录,如果运行中的容器修改一个已经存在的文件,那么会将该文件从下面的只读层复制到读写层,
只读层的这个文件就会覆盖,但还存在,这就实现了文件系统隔离,当删除容器后,读写层的数据将会删除,只读镜像不变。
镜像文件存储结构:
docker相关文件存放在:/var/lib/docker目录下  
                                     /var/lib/docker/aufs/diff        #每层与其父层之间的文件差异
                                     /var/lib/docker/aufs/layers/  #每层一个文件,记录其父层一直到根层之间的ID
                                     /var/lib/docker/aufs/mnt      #联合挂载点,从只读层复制到最上层可读写层的文件系统数据,在建立镜像时,每次写操作,都会视作一种增量操作,
                                                                                  即在原有的数据层上添加一个新层;所以一个镜像会有若干个层组成。每次commit提交就会产生一个ID,相当于在上
                                                                                  一层加了一层,可以通过这个ID对镜像回滚。

转载于:https://www.cnblogs.com/yingxiongguixing/p/11517708.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值