为什么使用 Compose?

Docker Compose 的主要优势

使用 Docker Compose 带来了诸多优势,能够简化容器化应用的开发、部署和管理:

  • 简化控制:Docker Compose 允许您在单个 YAML 文件中定义和管理多容器应用程序。这简化了编排和协调各种服务的复杂任务,使管理和复制您的应用程序环境变得更加容易。

  • 高效协作:Docker Compose 配置文件易于共享,促进开发人员、运维团队及其他利益相关者之间的协作。这种协作方式带来更顺畅的工作流程、更快的问题解决速度以及整体效率的提升。

  • 快速应用程序开发:Compose 会缓存用于创建容器的配置。当您重启未发生变化的服务时,Compose 会复用现有的容器。复用容器意味着您可以非常快速地对环境进行更改。

  • 跨环境可移植性:Compose 支持在 Compose 文件中使用变量。您可以利用这些变量为不同环境或不同用户自定义您的编排配置。

  • 广泛的社区和支持:Docker Compose 拥有一个充满活力且活跃的社区,这意味着拥有丰富的资源、教程和支持。这个由社区驱动的生态系统有助于 Docker Compose 的持续改进,并帮助用户有效地排查问题。

Docker Compose 的常见用例

Compose 可以用于多种不同的方式。以下是一些常见的用例。

开发环境

在开发软件时,能够在隔离环境中运行应用程序并与其交互至关重要。Compose 命令行工具可用于创建该环境并与其进行交互。

Compose 文件 提供了一种文档化和配置应用程序所有服务依赖项(数据库、队列、缓存、Web 服务 API 等)的方法。使用 Compose 命令行工具,您可以通过单个命令(docker compose up)为每个依赖项创建并启动一个或多个容器。

这些功能共同为您提供了一种便捷的方式来启动项目。Compose 可以将多页的“开发者入门指南”简化为一个机器可读的 Compose 文件和几条命令。

自动化测试环境

任何持续部署或持续集成流程的重要组成部分 是自动化测试套件。自动化端到端测试需要一个 运行测试的环境。Compose 提供了一种便捷的方式,用于为您的测试套件创建和销毁隔离的测试环境。通过在 Compose 文件中定义完整的环境,您只需几条命令即可创建和销毁这些环境:

$ docker compose up -d
$ ./run_tests
$ docker compose down

单主机部署

Compose 传统上专注于开发和测试工作流, 但随着每个版本的发布,我们正在生产导向功能方面取得进展。

有关使用面向生产的功能的详细信息,请参阅 生产环境中的 Compose

接下来是什么?