构建java环境的自动化构建和部署系列四

 所有系列文章:

  <<构建java环境的自动化构建和部署系列一>>

  <<构建java环境的自动化构建和部署系列二>>

 <<构建java环境的自动化构建和部署系列三>>

 <<构建java环境的自动化构建和部署系列四>>

前面都介绍了整套的自动化部署环境的搭建,本章是介绍怎么基于docker快速启动一个jenkins容器,实现docker 的环境部署;

本章将基于 https://gitee.com/gz-tony/viemall-dubbo.git 开源代码来演练自动化部署的步骤;

通过docker file构建 jenkins镜像

#cd  /opt/program/tools/docker-file/jenkins

# docker build -t www.viemall.cn/viemall/jenkins:v1 .

这里构建镜像成功后,把镜像文件push公司的harbor镜像仓库中;

       #docker  push  www.viemall.cn/viemall/jenkins:v1

    docker-fil文件:

        https://gitee.com/gz-tony/viemall-dubbo/tree/master/viemall-docekr/dockerfile

启动jenkins镜像;

docker run -d –name jenkins -p 8080:8080 –restart=always –privileged=true \

-v /var/jenkins_home/:/var/jenkins_home  \

-v /usr/java/jdk1.8.0_131/:/usr/local/jdk \

-v /usr/local/apache-maven-3.3.9/:/usr/local/maven \

-v /var/run/docker.sock:/var/run/docker.sock \

-v $(which docker):/usr/bin/docker \

-v ~/.ssh:/root/.ssh \

-e JAVA_OPTS=-Dorg.apache.commons.jelly.tags.fmt.timeZone=Asia/Shanghai

www.viemall.cn/viemall/jenkins:v1

启动成功,访问:

 配置跟 <<构建java环境的自动化构建和部署系列三>> 基本一致;

唯一注意的配置的路径是配置您的docker mavean 路径

image.png
这里的mavean 就是配置您的docker mavean 路径

2. 构建Job任务:

 构建viemall-web服务:

 新建JOB

image.png

image.png

image.png

   image.png

   image.png

Source files(源目录文件)

viemall-service-web/target/viemall-service-web-0.0.1-SNAPSHOT.war

Remove prefix(删除的目录文件)

viemall-service-web/target

Remote directory(远程目录)

/opt/program/servers

 

Exec command(远程命令)

#!/bin/sh

echo '================开始本机执行 docker 部署任务================'

#相当于在构建完成后自动执行此脚本,这个脚本实现自动化发布工作

mv /opt/program/servers/viemall-service-web-0.0.1-SNAPSHOT.war /opt/program/servers/viemall-service-web.war

docker rm -f viemall-service-web-tomcat || true

docker run -d -p 8081:8080 –restart=always -v /opt/program/servers/viemall-service-web.war:/usr/local/tomcat/webapps/ROOT.war –name viemall-service-web-tomcat tomcat8:v1

echo '================结束 docker 部署任务================'