docker容器和镜像区别是什么?

[复制链接]

975

主题

975

帖子

629

积分

高级会员

Rank: 4

积分
629
分享到:
发表于 2022-6-16 22:52:16 | 显示全部楼层 |阅读模式
docker
容器和镜像区别是什么?docker镜像是docker容器运行时的只读模板,镜像可以用来创建docker容器。

1、镜像(Image)就是一堆只读层(read-only layer)的统一视角,下面这张图能够帮助读者理解镜像的定义。

从左边我们看到了多个只读层,它们重叠在一起。除了最下面一层,其它层都会有一个指针指向下一层。
这些层是Docker内部的实现细节,并且能够在主机(运行Docker的机器)的文件系统上访问到。统一文件系统(union file system)技术能够将不同的层整合成一个文件系统,为这些层提供了一个统一的视角,这样就隐藏了多层的存在,在用户的角度看来,只存在一个文件系统。可以在图片的右边看到这个视角的形式。
你可以在你的主机文件系统上找到有关这些层的文件。需要注意的是,在一个运行中的容器内部,这些层是不可见的。

2、容器(container)的定义和镜像(image)几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的。

docker create 命令为指定的镜像(image)添加了一个可读写层,构成了一个新的容器。注意,这个容器并没有运行。

Docker是基于镜像的。镜像类似于已经包含了文件、配置和安装好的程序的虚拟机镜像。你可以像启动虚拟机一样启动多个镜像实例。运行中的镜像称为容器。
你可以修改容器(比如删除一个文件),但这些修改不会影响到镜像。不过,你使用 docker commit <container-id> <image-name>
命令可以把一个正在运行的容器变成一个新的镜像。

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表