在本模块中,您将为您的整体式 node.js 应用程序构建容器镜像,并将其推送至 Amazon Elastic Container Registry。开始构建

通过使用容器,您可以轻松打包应用程序的代码、配置和依赖关系,将其变成易于使用的构建块,从而实现环境一致性、运营效率、开发人员生产力和版本控制等诸多目标。容器有助于确保应用程序快速、可靠、一致地部署,其间不受部署环境的影响。

速度
启动包含新版本代码的容器无需大量部署工作。操作速度会提高,因为只需移动容器,便可将在开发人员本地计算机上的容器中构建的代码轻松移动到测试服务器。在构建时,此容器可以与运行应用程序堆栈所需的其他容器相关联。
依赖关系控制和改进的管道
Docker 容器镜像是应用程序代码和依赖关系的时间点捕获工具。 这可让工程组织为应用程序生命周期创建标准管道。例如:
- 开发人员在本地构建和运行容器。
- 持续集成服务器运行相同的容器并根据它执行集成测试,以确保其传递预期内容。
- 相同的容器会发送至模拟环境,在该环境中,会使用负载测试或手动 QA 检查容器的运行时行为。
- 相同的容器会发送至生产环境。
能够在集成和部署管道的各个阶段构建、测试、发送和运行完全相同的容器可以大大简化交付高质量、可靠应用程序的流程。
密度和资源效率
容器可以通过允许多个异构进程在一个系统上运行来提高资源效率。容器使用的隔离和分配技术必然会提高资源效率。容器占用的主机 CPU 和内存可以限制在一定数量内。通过了解容器需要的资源以及底层主机服务器提供的资源,您可以适当调整用于小型主机的计算资源,或提高在一个大型主机上运行的进程的密度,从而提高可用性并优化资源消耗。
灵活性
Docker 容器之所以灵活是因为它们可移植、易于部署且较小。相较于在 VM 上所需的安装和配置,容器内的打包服务可让容器轻松在主机之间移动、与出现故障的其他邻近服务隔离开,并免受主机系统上错误补丁或软件升级的影响。