问答 基于容器打包构建流程问题

阿廉 · May 06, 2019 · Last by dive replied at May 17, 2019 · 1353 hits

前言

公司想搞一个基于docker容器,自动打包发布的流程;主要应用于测试环境打包发布,之前也没做过。
自己想了两个流程发出来想和大家讨论一下。希望大家能给出一些建议。

基于宿主机打包

  • GitLab:存储代码
  • 宿主机:安装Jenkins、Docker、maven等构建依赖的工具。
  • 容器:运行两个容器—1.postgres数据库容器;2.Tomcat容器; 流程: 1.宿主机Jenkins创建job拉取代码,打包; 2.使用docker cp将war包粘贴到Tomcat容器; 3.重启Tomcat容器。

容器内直接打包

  • GitLab:存储代码
  • 公司内网服务器:安装Jenkins
  • 另外服务器:运行两个容器:容器A安装jenkins、tomcat、maven、git等等;容器B安装postgres数据库; 公司内网服务器安装的Jenkins,作master;容器A:jenkins做slave 流程: 1.执行内网服务器中jenkins-job; 2.容器Ajenkins拉去代码,构建打包; 3.粘贴war包至tomcat相应路径; 4.重启tomcat。
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 8 条回复 时间 点赞

容器编排的话用k8s解决

感觉这种方式还是传统虚拟机的玩法啊..为啥还要依赖war这个中间产物呢 直接输出镜像不好么 纯探讨哈

阿廉 #3 · May 07, 2019 作者
goodliving 回复

k8s还没看😳,您有什么比较好的参考资料吗?

阿廉 #4 · May 07, 2019 作者
AngryTester 回复

嗯,您的意思是说直接用dockerfile直接把war打包到images吗

阿廉 回复

看官网吧,资料新点

阿廉 回复

嗯 是的

用了gitlab-runner么?

可以直接再Jenkins里面配置tomcat的地址,编译完成后的war包,直接上传到tomcat里面,不需要docker cp。还可以是你重新编译一个镜像,然后滚动更新

需要 Sign In 后方可回复, 如果你还没有账号请点击这里 Sign Up