Automation Consultants 在服务中使用容器,让你的基础设施更加高效。
容器处于开发运维的核心,在大规模云端很普遍。如果你使用谷歌、Facebook、Microsoft 或任何大型软件即服务提供商的云计算服务,那么服务器端的软件很可能是在容器中运行的。Docker 为容器提供了行业标准。
Docker 容器可以被认为是精简的虚拟机。它们可以托管应用程序,并提供一个可以运行应用程序的隔离环境。两者的主要区别是:
- 容器更轻量化:它们所需的存储空间要比虚拟机少,而且在运行时,它们占用的内存要少得多 – 往往只比它们包含的应用程序所需的内存多一点。
- 容器更快速:它们可以在几毫秒而非几秒内启动和停止。
- 容器可以进行处置。它们通常从不变的图像(即模板)开始,并在它们停止后将其丢弃。应用程序数据保存在共享驱动器或网络驱动器上,并在容器销毁后保留。对容器内部文件所做的任何更改及其配置将丢失。这可以确保在通过模板启动新容器时,其设置和配置与从该图像创建的先前容器的设置和配置相同。
- Docker 拥有一个版本控制系统。如果希望保留对容器所做的更改,可以将其保存为图像的新版本。版本之间的更改会被记录下来并可以进行显示。
容器的优点包括
- 开发和测试处于一致的环境中:在一个环境中出现的错误将在其他环境中出现。容器正在越来越多地在 CI/CD 中被 Drone 和 Shippable 等系统所使用。
- 开发人员可以在更接近于生产环境的环境中编写代码。由于容器的轻量化原因,生产中存在的服务都可以在处于开发环境的容器中运行。
- 多个应用程序可以在位于同一台机器的容器中运行,不会相互干扰。
- 易于通过 www 环境进行调试。如果发现错误,可以非常快速地创建 www 环境并修复错误,然后快速部署到生产环境中。
在大规模云端,部署的容器数以千计,必须通过 Kubernetes 或 Docker 集群模式等编排系统进行管理。