将Golang Gin框架项目发布到Docker

首先在本地编译项目

    1. 在 项目目录下

         

SET CGO_ENABLED=0

SET GOOS=linux

SET GOARCH=amd64

go build main.go

这样在main.go同目录下会生产main二进制文件

 2. Dockerfile 文件配置

复制代码
FROM scratch
MAINTAINER  "lyh"

WORKDIR .
COPY . .

EXPOSE 6080
CMD ["./main"]
复制代码

 注意 : 上面的Dockerfile里的端口最好和下面main文件监听的端口一致

 

 

3. 将项目下的前端文件目录(包含view文件夹、script文件夹、static文件夹… 即所有与前端相关的文件夹)和生成的二进制mian文件  和  Dockerfile文件进行压缩上传到CentOS

 

 

 

 4.通过 rz 上传ginnewio.zip 到CentOS

 5.  解压文件   unzip -o ginnewio.zip -d /home/ginnewio

 6. 进入ginnewio文件夹 cd ginnewio    修改main二进制文件权限

    chmod -R 777 main 

 7. 创建镜像   (注意最后一个点)

   docker build -f /home/ginnewio/Dockerfile -t ginnewio .

 8. 运行容器

   docker run -d -p 6080:6080 --name ginnewio ginnewio

9.如果报错  docker: Error response from daemon: driver failed programming external connectivity on endpoint ginnewio (…

     重启 docker   

             systemctl restart docker

     再启动容器

             docker start 426b62dfc3a18c68a2

10.结果可以通过crul http://localhost:6080/hello查看

      

 

posted @   酒沉吟  阅读(1452)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示