如何使用 Docker 部署一个 Go 应用?

· 约 3 分钟读完 · 第 110 / 115 章

推荐答案

本题详细解读

1. 编写 Go 应用

首先,你需要编写一个简单的 Go 应用。这个应用会监听 8080 端口,并在访问根路径时返回 "Hello, World!"。

2. 创建 Dockerfile

接下来,你需要创建一个 Dockerfile 来定义如何构建 Docker 镜像。Dockerfile 的内容如下:

  • FROM golang:1.19-alpine:使用官方的 Go 1.19 镜像作为基础镜像,基于 Alpine Linux,体积较小。
  • WORKDIR /app:设置工作目录为 /app。
  • COPY . .:将当前目录下的所有文件复制到容器的 /app 目录。
  • RUN go build -o main .:在容器中编译 Go 应用,生成可执行文件 main。
  • EXPOSE 8080:暴露 8080 端口,允许外部访问。
  • CMD ["./main"]:设置容器启动时执行的命令,即运行编译后的 Go 应用。

3. 构建 Docker 镜像

使用 docker build 命令构建 Docker 镜像。-t my-go-app 参数指定镜像的名称为 my-go-app。

4. 运行 Docker 容器

使用 docker run 命令运行 Docker 容器。-p 8080:8080 参数将容器的 8080 端口映射到主机的 8080 端口,这样你就可以通过 http://localhost:8080 访问 Go 应用。

通过以上步骤,你就可以成功使用 Docker 部署一个简单的 Go 应用了。