使用容器支持的开发加快开发和测试速度
容器提供了一种一致的方式来构建、共享和运行跨不同环境的应用程序。虽然容器通常用于容器化您的应用程序,但它们也使运行开发所需的必要服务变得非常容易。无需安装或连接到远程数据库,您可以轻松启动自己的数据库。但这还不是全部。
通过容器支持的开发,您可以使用容器通过模拟或运行应用程序所需的服务的自己的实例来增强您的开发环境。这提供了更快的反馈循环、减少与远程服务的耦合以及更大的测试错误状态的能力。
最重要的是,无论正在开发的主要应用程序是否在容器中运行,您都可以获得这些好处。
您将学到什么
- 容器支持的开发的含义
- 如何将非容器化应用程序连接到容器化服务
- 使用容器模拟或运行服务的本地实例的几个示例
- 如何使用容器向您的开发环境添加额外的故障排除和调试工具
谁适合阅读?
- 想要减少与共享或部署的基础设施或远程 API 端点耦合的团队
- 想要减少在开发过程中直接使用云服务相关的复杂性和成本的团队
- 想要更轻松地可视化数据库、队列等中正在发生的事情的开发人员
- 想要简化设置开发环境的复杂性,而不会影响应用程序本身开发的团队
工具集成
与 Docker Compose 和 Testcontainers 配合使用效果很好。
模块
什么是容器支持的开发?
容器支持的开发是指使用容器通过运行应用程序依赖的服务的本地实例或模拟器来增强开发环境的想法。一旦您开始使用容器,就可以轻松添加其他服务来可视化或排除服务中出现的问题。
演示:在本地运行数据库
使用容器支持的开发,可以轻松地在本地运行数据库。在此演示中,您将看到如何执行此操作,以及如何将非容器化应用程序连接到数据库。
演示:模拟 API 端点
许多 API 需要来自其他数据端点的数据。在开发中,这会增加诸如共享凭据、正常运行时间/可用性和速率限制之类的复杂性。您的应用程序无需直接依赖这些服务,而是可以与模拟 API 服务器进行交互。
此演示将演示如何使用 WireMock 轻松开发和测试应用程序,包括 API 的各种错误状态。
演示:在本地开发云
在开发应用程序时,通常更容易将应用程序的某些方面外包给云服务,例如 Amazon S3。但是,在本地开发中连接到这些服务会引入 IAM 策略、网络约束和配置问题。虽然这些要求在生产环境中很重要,但它们会大大增加开发环境的复杂性。
使用容器支持的开发,您可以在开发和测试期间运行这些服务的本地实例,从而无需进行复杂的设置。在此演示中,您将看到 LocalStack 如何使您能够完全从开发人员的工作站开发和测试应用程序。
演示:添加额外的调试和故障排除工具
一旦您开始在开发环境中使用容器,添加其他容器来可视化数据库或消息队列的内容、填充文档存储或事件发布者就会变得容易得多。在此演示中,您将看到其中一些示例,以及如何将多个容器连接在一起以使测试更容易。