# Docker 简介 ## Docker 是什么 Docker 是开发,传输和运行应用程序的开放平台。 Docker 使您能够将应用程序与基础架构分开,以便快速交付软件。 借助 Docker,您可以像管理应用程序一样管理基础架构。通过利用 Docker 的方法快速进行运输,测试和部署代码,您可以显著缩短编写代码和在生产环境中运行代码之间的耗时。 ## Docker 平台 Docker 提供了被称为容器的松散隔离环境,在环境中可以打包和运行应用程序。隔离和安全性允许您在给定主机上同时运行多个容器。容器是轻量级的,因为它们不需要管理程序的额外负载,而是直接在主机的内核中运行。这意味着您可以在给定的硬件组合上运行更多容器,而不是使用虚拟机。你甚至可以在实际上是虚拟机的主机中运行 Docker 容器! Docker 提供工具和平台来管理容器的生命周期: * 使用容器开发您的应用程序及其支持组件。 * 容器成为分发和测试你的应用程序的单元。 * 准备好后,将您的应用程序部署到生产环境中,作为容器或协调服务。无论您的生产环境是本地数据中心,云提供商还是两者的混合,这都是一样的。 ## Docker 引擎 Docker 引擎是一个 C/S 架构的应用,它有这些主要的组件: 服务器是一个长期运行的程序,被称为守护进程。 REST API 指定程序可用于与守护进程进行通信并指示其执行操作的接口。 命令行客户端。 ![https://docs.docker.com/engine/images/engine-components-flow.png](https://docs.docker.com/engine/images/engine-components-flow.png) CLI 使用 Docker REST API 通过脚本或直接 CLI 命令来控制 Docker 守护进程或与其进行交互。许多其他 Docker 应用程序使用底层的 API 和 CLI。 守护进程创建并管理 Docker 对象,如镜像,容器,网络和卷。