Professional Documents
Culture Documents
Docker 1
Docker 1
什么是 Docker?
Published 2018年 1月 9日 • 复制 URL
Docker 是什么?
"Docker"一词指代了多个概念,包括开源社区项目、开源项目使用的工具、主
导支持此类项目的公司 Docker Inc.,以及该公司官方支持的工具。这些技术和
公司的同名可能会造成混淆。
以下简要说明 Docker 以便区分:
IT 软件"Docker"是支持创建和使用 Linux® 容器的容器化技术。
开源 Docker 社区致力于改进这类技术,并免费提供给所有用户,使之获
益。
Docker Inc. 公司凭借 Docker 社区产品起家,主要负责提升社区版本的安
全性,并将技术进步与广大技术社区分享。此外,它还专门对这些技术产
品进行完善和安全固化,以服务于企业客户。
借助 Docker,您可将容器当做轻巧、模块化的虚拟机来使用。同时,您还将获
得高度灵活性,实现对容器的高效创建、部署及复制,并在环境之间迁移它们,
从而有助于您针对云来优化应用。
https://www.redhat.com/zh/topics/containers/what-is-docker 1/8
12/9/23, 5:28 PM Docker 原理新手指南:一文看懂 Docker 是什么?
https://www.redhat.com/zh/topics/containers/what-is-docker 2/8
12/9/23, 5:28 PM Docker 原理新手指南:一文看懂 Docker 是什么?
Docker 容器的优势是什么?
模块化
Docker 容器化方法注重在不必停止整个应用的情况下,单独提取部分应用进行
更新或修复的能力。除了这种基于微服务的方法,您还可以采用与面向服务的架
构(SOA)类似的方法,在多个应用间共享进程。
层和镜像版本控制
每个 Docker 镜像文件都包含多个层,它们组合成一个镜像。每当镜像发生改变
时,就会创建一个新的镜像层。每当用户指定命令时,例如 run 或 copy,就会
创建一个新的层。
Docker 可重复利用这些层来构建新容器,因而加快了构建过程。镜像之间共享
中间变化,进一步提升了速度、规模以及效率。版本控制也是层所固有的功能:
每次发生新的更改时,您大都会获得一个内置的更改日志,拥有对容器镜像的全
盘管控。
https://www.redhat.com/zh/topics/containers/what-is-docker 3/8
12/9/23, 5:28 PM Docker 原理新手指南:一文看懂 Docker 是什么?
回滚
回滚也许是层最值得一提的功能。每个镜像有多个层。不喜欢镜像的当前迭代?
将它回滚到上一版本。这一功能还支持敏捷开发方法,帮助实现持续集成和部署
(CI/CD),使其在工具层面成为一种现实。
快速部署
新硬件的启用、运行、置备和供应在过去需要耗费数日,所需的投入和开销也很
繁重。基于 Docker 的容器可以将部署缩短到只用几秒。通过为每个进程创建容
器,您可以快速将这些进程共享给新的应用。而且,添加或移动容器时无需重启
操作系统,大大缩短了部署时间。除了部署时间更短外,您还可以轻松无虞、经
济高效地创建和销毁容器创建的数据。
因此,Docker 技术是一种更加精细、可控、基于微服务的技术,可为企业提供
更高的效率价值。
使用 Docker 有什么局限?
Docker 本身能够管理单个容器。但随着您开始使用越来越多的容器和容器化应
用,并把它们划分成数百个部分,很可能会导致管理和编排变得困难。最终,您
需要后退一步,对容器实施分组,以便跨所有容器提供诸如网络、安全和遥测等
服务。于是,Kubernetes 应运而生。
了解更多与 Kubernetes 容器编排有关的内容
使用 Docker,您将获得与传统 Linux 容器不同的类 UNIX 功能,包括可以随同
应用一起,在容器中使用 cron 或 syslog 之类的进程。当然,在某些事情上面也
存在一些限制,例如终止子进程之后,需要清理孙进程,而对于这类事情,传统
Linux 容器天生会处理。但我们可以在开始时修改配置文件和设置功能,从而消
除这些顾虑,这些都是瑕不掩瑜的小问题。
在此之上,还有其他非命名空间的 Linux 子系统和设备,包括 SELinux、
Cgroup 和 /dev/sd* 设备等。这意味着,如果攻击者控制了这些子系统,主机
https://www.redhat.com/zh/topics/containers/what-is-docker 4/8
12/9/23, 5:28 PM Docker 原理新手指南:一文看懂 Docker 是什么?
也将不保。为了保持轻量,主机与容器共享内核,也因此埋下了安全漏洞的隐
患。在这一点上,它与虚拟机不同,后者更加严格地与主机系统保持隔离。
Docker 容器真的安全吗?
继续阅读
文章
容器与虚拟机
Linux 容器和虚拟机(VM)都是封装型计算环境,里面组合了各种 IT 组件并独立于系统的
其余部分。
扩展阅读
https://www.redhat.com/zh/topics/containers/what-is-docker 5/8
12/9/23, 5:28 PM Docker 原理新手指南:一文看懂 Docker 是什么?
文章
什么是容器编排?
容器编排是指自动化容器的部署、管理、扩展和联网。
扩展阅读
文章
什么是 Linux 容器?
Linux 容器是与系统隔离开的一系列进程,它从单独的镜像运行,并由该镜像提供支持进程
所需的全部文件。
扩展阅读
详细了解容器
产品 相关文章 相关资源 培训
https://www.redhat.com/zh/topics/containers/what-is-docker 6/8
12/9/23, 5:28 PM Docker 原理新手指南:一文看懂 Docker 是什么?
企业级应用平台,包含一系列久经测试的服务,可在您选择的基础架构
上将应用推向市场。
了解更多
产品
工具
试用购买与出售
沟通
关于红帽
我们是世界领先的企业开源解决方案供应商,提供包括 Linux、云、容器和 Kubernetes。我
们致力于提供经过安全强化的解决方案,从核心数据中心到网络边缘,让企业能够更轻松地跨
平台和环境运营。
选择语言
简体中文
关于红帽
加入红帽
活动
全球办事处
https://www.redhat.com/zh/topics/containers/what-is-docker 7/8
12/9/23, 5:28 PM Docker 原理新手指南:一文看懂 Docker 是什么?
联系红帽
红帽博客
多元、平等与包容
红帽周边产品
红帽全球峰会
https://www.redhat.com/zh/topics/containers/what-is-docker 8/8