加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

一次golang应用的docker部署经历

发布时间:2020-12-16 09:22:48 所属栏目:大数据 来源:网络整理
导读:开发平台win10,服务器centos7.5 编写dockerfile? # scratch 为空镜像,因为golang的build的可执行文件不需要什么环境FROM scratch# 作者署名MAINTAINER liusiming [email?protected] # 添加一个证书,要不然websocket连接会报错 dial:x509: certificate signe

开发平台win10,服务器centos7.5

编写dockerfile?

# scratch 为空镜像,因为golang的build的可执行文件不需要什么环境
FROM scratch
# 作者署名
MAINTAINER liusiming <[email?protected]>
# 添加一个证书,要不然websocket连接会报错 dial:x509: certificate signed by unknown authority,下载地址:https://curl.haxx.se/ca/cacert.pem
ADD cacert.pem /etc/ssl/certs/
# 可执行文件
ADD ticker-server /
#配置文件
ADD config.toml /
# 运行
CMD ["/application"]

写一个build.bat文件,很方便

@echo off
:: 编译linux可执行文件
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
go build -o application main.go
:: build镜像并指定一个版本
docker build -t username/repository:%1 .
:: 上传到你的dockerhub 仓库(需要梯子)
docker push username/repository:%1
pause

运行build.bat 0.0.1即可

最后是服务下载镜像

docker create --restart=always --name my_application -p 8888:8888 -v /application/log:/log  
username/application:0.0.5

docker start my_application 

--restart=always 加入服务器重启,自启动
-p 对外开放的端口,这里我有一个rpc服务,对外是8888
-v 挂在日志文件到宿主文件夹 这里是我记录的日志文件夹

查看控制台输出
docker logs my_application 

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读