【Docker】Golang工程的Dockerfile:快速入门与最佳实践指南
大家好 我是寸铁👊
总结了一篇【Docker】Golang工程的Dockerfile:快速入门与最佳实践指南✨
喜欢的小伙伴可以点点关注 💝
问题背景
今天寸铁想让编写好的go
程序在docker
上面跑,要想实现这样的效果,就需要用到今天的主角:Docker File
,那怎么使用DockerFile
呢?
那具体怎么做呢?其实很简单,不过网上的博客的一些命令笔者实操过,发现不够完善!
小伙伴们要想实现,看笔者的正确食用指南即可,减少大量踩坑的时间。
编写Dockerfile
在你要运行到容器的程序所在的文件夹创建Dockerfile
之后复制如下内容到创建的文件中。
FROM golang:latest
# 设置工作目录
WORKDIR /app
# 复制 Go 程序源代码到工作目录
COPY dockerUper.go .
# 编译 Go 程序
RUN go build -o dockerUper dockerUper.go
# 运行 Go 程序
CMD ["sh", "-c", "./dockerUper"]
dockerUper 替换为具体你编写的文件名
文件夹的结构如下:
创建镜像
使用如下命令创建docker
镜像
docker build -t my-golang-app .
这里创建的镜像名为
my-golang-app
具体替换为你的命名
运行容器
使用如下命令运行Docker
镜像的容器
docker run --name mycontainer-12 my-golang-app
容器名为
mycontainer-12
,镜像名为my-golang-app
。
具体可以根据你的实际情况进行修改。
注意:run
之后 下次的容器名不能重复!!!
运行结果如下:
这样就运行容器成功啦!
看到这里的小伙伴,恭喜你又掌握了一个技能👊
希望大家能取得胜利,坚持就是胜利💪
我是寸铁!我们下期再见💕
往期好文💕
保姆级教程
【保姆级教程】Windows11下go-zero的etcd安装与初步使用
【保姆级教程】Windows11安装go-zero代码生成工具goctl、protoc、go-zero
【Go-Zero】手把手带你在goland中创建api文件并设置高亮
报错解决
【Go-Zero】Error: user.api 27:9 syntax error: expected ‘:‘ | ‘IDENT‘ | ‘INT‘, got ‘(‘ 报错解决方案及api路由注意事项
【Go-Zero】Error: only one service expected goctl一键转换生成rpc服务错误解决方案
【Go-Zero】【error】 failed to initialize database, got error Error 1045 (28000):报错解决方案
【Go-Zero】Error 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)报错解决方案
【Go-Zero】type mismatch for field “Auth.AccessSecret“, expect “string“, actual “number“报错解决方案
【Go-Zero】Error: user.api 30:2 syntax error: expected ‘)‘ | ‘KEY‘, got ‘IDENT‘报错解决方案
【Go-Zero】Windows启动rpc服务报错panic:context deadline exceeded解决方案