1、镜像(Image)就是一堆只读层(read-only layer)的统一视角,下面这张图能够帮助读者理解镜像的定义。
从左边我们看到了多个只读层,它们重叠在一起。除了最下面一层,其它层都会有一个指针指向下一层。
这些层是Docker内部的实现细节,并且能够 在主机(运行Docker的机器)的文件系统上访问到。统一文件系统(union file system)技术能够将不同的层整合成一个文件系统,为这些层提供了一个统一的视角,这样就隐藏了多层的存在,在用户的角度看来,只存在一个文件系统。可以在图片的右边看到这个视角的形式。
你可以在你的主机文件系统上找到有关这些层的文件。需要注意的是,在一个运行中的容器内部,这些层是不可见的。
2、容器(container)的定义和镜像(image)几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的。
docker create 命令为指定的镜像(image)添加了一个可读写层,构成了一个新的容器。注意,这个容器并没有运行。
Docker是基于镜像的。镜像类似于已经包含了文件、配置和安装好的程序的虚拟机镜像。你可以像启动虚拟机一样启动多个镜像实例。运行中的镜像称为容器。
你可以修改容器(比如删除一个文件),但这些修改不会影响到镜像。不过,你使用 docker commit <container-id> <image-name> 命令可以把一个正在运行的容器变成一个新的镜像。
西部数码的容器云是通过docker技术,在集群服务器上部署容器服务实现,拥有上万Linux镜像,功能强大、轻量灵活,可轻松作集群服务,自由轻松搭建私有网络。
高性价比的容器云产品链接 https://www.west.cn/paas/container/