利用容器支持的开发实现更快的开发和测试

容器提供了一种跨不同环境构建、共享和运行应用的一致方式。虽然容器通常用于容器化您的应用本身,但它们也使得运行开发所需的基本服务变得异常容易。您无需安装或连接到远程数据库,而是可以轻松启动自己的数据库。但可能性不止于此。

通过容器支持的开发,您可以使用容器来模拟或运行应用所需服务的自身实例,从而增强开发环境。这提供了更快的反馈循环,减少了与远程服务的耦合,并提高了测试错误状态的能力。

最重要的是,无论正在开发的主应用是否在容器中运行,您都可以获得这些优势。

您将学到什么

  • 容器支持的开发的含义
  • 如何将非容器化应用连接到容器化服务
  • 使用容器模拟或运行本地服务实例的几个示例
  • 如何使用容器为您的开发环境添加额外的故障排除和调试工具

适用人群

  • 希望减少对共享或已部署基础设施或远程 API 端点的耦合的团队
  • 希望减少在开发期间直接使用云服务带来的复杂性和成本的团队
  • 希望更容易可视化其数据库、队列等情况的开发者
  • 希望降低设置开发环境的复杂性,而不影响应用本身开发的团队

工具集成

与 Docker Compose 和 Testcontainers 配合良好。

模块

什么是容器支持的开发?

容器支持的开发理念是利用容器通过运行应用依赖服务的本地实例或模拟器来增强您的开发环境。一旦您开始使用容器,就可以轻松添加额外服务来可视化或排除服务中发生的问题。

演示:在本地运行数据库

通过容器支持的开发,在本地运行数据库非常容易。在此演示中,您将看到如何操作,以及如何将非容器化应用连接到数据库。

提示

使用容器化数据库指南中了解更多关于在容器中运行数据库的信息。

演示:模拟 API 端点

许多 API 需要来自其他数据端点的数据。在开发中,这增加了复杂性,例如凭据共享、正常运行时间/可用性和速率限制。您的应用无需直接依赖这些服务,而是可以与模拟 API 服务器进行交互。

本演示将展示如何使用 WireMock 轻松开发和测试应用,包括 API 的各种错误状态。

提示

使用 WireMock 模拟 API 服务指南中了解更多关于使用 WireMock 模拟 API 的信息。

演示:在本地开发云应用

开发应用时,通常更容易将应用的部分功能外包给云服务,例如 Amazon S3。然而,在本地开发中连接这些服务会引入 IAM 策略、网络限制和配置复杂性。虽然这些要求在生产环境中很重要,但它们显著增加了开发环境的复杂性。

通过容器支持的开发,您可以在开发和测试期间运行这些服务的本地实例,从而无需复杂的设置。在此演示中,您将看到 LocalStack 如何使开发和测试应用完全在开发者的工作站上进行。

提示

使用 LocalStack 开发和测试 AWS 云应用指南中了解更多关于使用 LocalStack 的信息。

演示:添加额外的调试和故障排除工具

一旦您开始在开发环境中使用容器,添加额外容器来可视化数据库或消息队列的内容、为文档存储或事件发布者播种数据就会变得容易得多。在此演示中,您将看到其中一些示例,以及如何连接多个容器以使测试更加容易。

页面选项