Docker容器与镜像区别详解(6大核心区别)

Docker容器与镜像是Docker的核心组件,掌握好两者区别Docker至关重要@mikechen

Docker容器

Docker容器是Docker镜像的运行时实例,换句话说,当你运行一个Docker镜像时,你就创建了一个Docker容器。

Docker容器与镜像区别详解(6大核心区别)-mikechen

与传统的虚拟机相比,Docker容器启动速度更快,资源占用更少。

并且,每个容器都运行在独立的命名空间中,彼此之间相互隔离,互不影响。

使用 Linux Namespace、 和 Cgroups ,来实现 CPU、内存、网络等隔离。

容器具有生命周期,可以被创建、启动、停止、重启和删除。

创建(create) → 启动(start) → 停止(stop) → 删除(rm)

 

Docker镜像

Docker 镜像是一种只读模板,包含应用程序及其运行环境。

镜像是容器的“源代码”,是构建容器的基础。

Docker容器与镜像区别详解(6大核心区别)-mikechen

典型特征:

  • 📦 只读层结构(Layered):多层构成,每一层是增量变化

  • 🔁 缓存复用:构建镜像时,未变更的层可复用

  • 🔧 可版本管理:支持使用 tag(标签)管理不同版本

  • 🌍 可分发:可推送至 Docker Hub / 私有 Registry,实现跨环境部署

 

Docker容器与镜像区别

核心区别,如下:

Docker容器与镜像区别详解(6大核心区别)-mikechen

对比项 Docker 镜像 (Image) Docker 容器 (Container)
定义 应用及其依赖的只读模板 镜像的运行实例
状态 静态的,不能运行 动态的,可运行、交互
文件系统 多层、只读 在镜像基础上添加可写层
生命周期 永久存在,直到被删除 短暂、可随时销毁与重建
存储位置 本地或远程仓库 本地(通过 Docker Engine 管理)
示例命令 docker pull, docker build docker run, docker exec
关系 容器的“模板” 镜像的“实例”

mikechen

mikechen睿哥,10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复架构即可获取《阿里架构师进阶专题全部合集》,后台回复面试即可获取《史上最全阿里Java面试题总结

评论交流
    说说你的看法