前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >[Docker]如何使用Docker部署一个go程序

[Docker]如何使用Docker部署一个go程序

原创
作者头像
宇宙无敌暴龙战士之心悦大王
发布2023-03-06 13:31:07
发布2023-03-06 13:31:07
1.8K00
代码可运行
举报
文章被收录于专栏:kwaikwai
运行总次数:0
代码可运行

Docker定义

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

本文我们介绍怎么使用 Docker 部署 Go 项目。阅读本文,需要读者朋友们了解 Docker 的基本操作。

go项目的开发

首先,我们开发一个简单的 Go Web 项目,使用 Go 内置命令行工具 go build 编译生成可执行文件 ./hello。这是项目结构。

代码语言:javascript
代码运行次数:0
运行
复制
.
├── Dockerfile
├── go.mod
├── hello
├── main.go
└── service.log

我们使用 Go 标准库编写一个 Web 项目,运行编译生成的可执行程序,访问 http://127.0.0.1:8080/hello,输出 hello word

代码语言:javascript
代码运行次数:0
运行
复制
curl http://127.0.0.1:8080/hello
# 输出
hello world

Docker的使用

我们开始编写 Dockerfile 文件,使该项目可以支持使用 Docker 部署。

Dockerfile 文件:

代码语言:javascript
代码运行次数:0
运行
复制
# 基础镜像
FROM alpine:3.12
# 维护者
MAINTAINER frank
# docker build 时执行命令 - 创建目录
RUN mkdir -p "/data/app" \
&& ln -sf /dev/stdout /data/app/service.log
# 工作目录
WORKDIR "/data/app"
# 拷贝
COPY hello /data/app/hello
# docker run 时执行命令
ENTRYPOINT ["./hello"]

在编写完 Dockerfile 文件之后,我们可以使用 docker 命令构建镜像,前提是我们本机已安装 Docker。

代码语言:javascript
代码运行次数:0
运行
复制
docker build -t hello:v1.0.0 .

运行以上构建 Docker 镜像的命令之后,我们就已成功构建 Docker 镜像。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Docker定义
  • go项目的开发
  • Docker的使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档