运维监控

Jenkins+Maven+Docker持续构建0-总体配置

2018-06-03  本文已影响199人  K1024

设计目标

  1. 整体流程
    将代码从版本管理服务器下载到Jenkins构建服务器上,通过Jenkins调用maven自动构建war包,将构建的war包直接拷贝到Dockerfile目录,通过Jenkins完成镜像的构建
    • 安装Jenkins构建服务器
    • 通过Jenkins将源码checkout到Jenkins服务器
    • 通过Jenkins构建war包
    • 通过Jenkins构建镜像
  2. 构建示意图如下


    整体流程.jpg

演示环境

  1. 代码托管:阿里云的云效
    • 通过git进行代码托管


      阿里云托管.jpg
    • 项目源码:一个通过jdk6编译的JAVA WEB 项目

      • 挑战1:jdk6编译的代码只能运行在tomcat6服务器上才不会出现编译错误;
      • 挑战2:Jenkins构建应用是jdk8+tomcat8 来运行的,编译JDK6的代码有一定的风险
    • 通过maven的方式构建的项目

  2. 代码构建环境Ubuntu 16.04 LTS
    • Jenkins版本2.120
    • JDK版本:1.8.0_171
    • MAVEN版本:3.5.3
  3. Docker镜像(基于Ubuntu)
    • JDK:1.6.0_45
    • Tomcat6
    • Ubuntu:16.04 LTS
    • Docker server version: 18.03.1-ce

整体代码构建

  1. Jenkins-全局工具配置
  1. 构建任务的配置
#这里很关键的是我们pom.xml文件指定了我们的项目必须使用jdk1.6编译,这样就解决了用指定版本jdk编译的问题了
mvn clean package -Dmaven.test.skip=true
#切换到maven构建的target目录中,里边是我们新构建的war包jiuchongju.war
cd target
#将jiuchongju.war强制拷贝到 /root/docker-jcj/目录下,这个目录是我们用来制作docker镜像的目录
cp -r jiuchongju.war /root/docker-jcj/
#切换到镜像的制作目录 /root/docker-jcj
cd /root/docker-jcj
#启动镜像制作,调用Dockerfile 文件制作一个jcj的镜像,这个镜像会把jiuchongju.war打包部署到镜像里供使用
docker build -t jcj .
上一篇下一篇

猜你喜欢

热点阅读