[Docker]如何使用Docker部署一个go程序 世界新动态

来源:腾讯云 时间:2023-03-08 03:22:49


(资料图片仅供参考)

Docker定义

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

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

go项目的开发

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

.├── Dockerfile├── go.mod├── hello├── main.go└── service.log

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

curl http://127.0.0.1:8080/hello# 输出hello world

Docker的使用

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

Dockerfile 文件:

# 基础镜像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。

docker build -t hello:v1.0.0 .

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

X 关闭

[Docker]如何使用Docker部署一个go程序 世界新动态

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统

2023-03-08

【热闻】乳晕大小代表什么情况_乳晕大小代表什么

1、遗传因素,妊娠因素,一般是生了小孩后。2、女人乳头颜色变深,乳晕变大(要喂奶,女人应该因此感到自豪)。本文到此分享完

2023-03-07

环球热点!七碗茶

1、《七碗茶》是唐代诗人卢仝在少室山茶仙谷茶仙泉隐居时所做的的七言古诗《走笔谢孟谏议寄新茶》中重点的一部分。2、写出了品

2023-03-07

全球视点!十岁生日致辞简短100字_十岁生日致辞100字简短

1、亲爱的祖父母、叔叔阿姨、兄弟姐妹、孩子们:2、你好!(鞠躬)3、谢谢你在百忙之中抽出时间来参加我的十岁生日。(鞠躬)

2023-03-07

想问下新航道雅思培训费用是多少_天天滚动

新航道学校通过制订和实施精准的学习方案,使学员的英语能力和考试成绩在短期内得到迅速提高,并熟练掌握海外学习所需的批判性思维、社会交往

2023-03-07

13岁男孩身高1米91 网友:原来是巴特尔儿子

喜欢巴特尔的朋友都知道,最近几年大巴的变化非常大,从身材和面部就可以看出,大巴比以前瘦了很多,在退役之前,巴特尔其实就患上了糖尿病,

2023-03-07

职场美力 由我定义 | 每一个“她”都闪闪发光_世界快资讯

在总台播出的影视剧中,许多职场女性角色令人印象深刻:她们来自不同的领域,处于不同的阶段,经历着不同的人生,或普通,或不凡

2023-03-07

环球新动态:挡风墙

1、挡风墙是指遮断井巷风流的构筑物,又称密闭。2、通常砌筑在非生产的巷道里。3、永久性挡风墙可用砖、石或混凝土砌筑。4、

2023-03-07

保罗感谢休斯顿 保罗准备再次回归俄城了吗?

这次的NBA自由市场真是特别疯狂,尤其是保罗和威少互换战队更是引来了无数人猜测。保罗在社交媒体发文:“感谢过去几年休斯顿

2023-03-07

留学公寓电视剧-世界报道

1、《留学公寓第一季》是系列电视剧《留学公寓》的第一部,由刘潘思懿、詹成霖联合执导,闫安、金草、刘科楠、曲晓婉、孙竹珺主

2023-03-07

Copyright ©   2015-2023 华夏科技网版权所有  备案号:琼ICP备2022009675号-37   联系邮箱:435 227 67@qq.com