上一篇文章中如何用docker编译代码并且启动sever以及避免坑(上),我们写了如何容docker编译代码,以及如何避免其中的坑,今天说一下将编译好的可执行程序作为server,使用docker启动。后续会有更多的模式和算法以及区块链相关的,如果你是想学习go语言或者是对设计模式或者算法感兴趣亦或是区块链开发工作者,都可以关注一下。(微信公众号:Go语言之美,csdn:Go语言之美。更多go语言知识信息等)。公众号会持续为大家分享更多干货。
![6c7a57c8b7cfda288c61cb112f4e4a86.png](https://img-blog.csdnimg.cn/img_convert/6c7a57c8b7cfda288c61cb112f4e4a86.png)
我们有了这个可执行的文件,启动后就是一个sever,我们可以通过rpc或者方式访问这个server,我们可以创建一个容器,容器启动时,直接启动我们的sever。首先说一下大体思路:
- 将可执行文件挂载到docker容器中
- 可以将sever监听的端口在容器中映射到主机,或者直接访问docker的ip,建议映射出来
- 创建并启动容器,同时启动sever
- 容器启动后,监控sever是否成功启动
- sever关闭后自动删除容器
这是一个基本的思路,接下来是示例代码:
runParam.Cmd = []string{ "/main-sever