首先在本地编译项目
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查看