跳转到主要内容

【Go语言容器化】Go 多阶段 Docker 教程

欢迎各位码农!在本教程中,我们将研究多阶段 Docker 镜像以及如何使用它们来最小化生产 Go 应用程序所需的容器大小。

在本教程结束时,我们将涵盖以下概念:

  • 什么是多阶段 Dockerfile。
  • 我们如何为我们的 Go 应用程序构建简单的多阶段 Dockerfile

Docker 是一种强大的容器化技术,可用于轻松启动隔离且可重现的环境,在其中构建和运行我们的应用程序。它越来越受欢迎,越来越多的云服务提供商提供本地 docker 支持,让您可以轻松部署容器化应用程序,让全世界看到!

注意 - 本教程是我之前的 Go + Docker 教程的后续,可以在此处找到:使用 Docker 容器化您的 Go 应用程序

多阶段 Dockerfile 的需求是什么?


为了了解多阶段 Dockerfile 为何有用,我们将创建一个简单的 Dockerfile,它具有一个阶段来构建和运行我们的应用程序,另一个 Dockerfile 具有构建器阶段和生产阶段。

一旦我们创建了这两个不同的 Dockerfile,我们应该能够比较它们,并希望自己看到多阶段 Dockerfile 比它们更简单的对应物更受欢迎!