安装:

1、  从官网上下载新版本的Jenkins,https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.89.4/jenkins.war

2、  Jenkins.war放在10.0.10.133的/opt下面,启动方式:nohup java -jar jenkins.war --httpPort=8080 &

3、  jenkins访问地址http://10.0.10.133:8080;完成Jenkins的初始化,(插件选择默认安装)下一步就可以创建项目了

4、  Jenkins的工作目录是/root/.jenkins/workspace

 

部署:

     首先在”系统管理”à”全局工具配置”中配置上jdk的安装位置,以及maven的安装(maven的安装可以选择自动安装,也可以选择从系统安装中获取);(插件的安装,等下面部署具体项目的时候再介绍需要安装那些插件);

再一个就是配置后端管理的节点,这里有个问题就是我下载的是最新版本的Jenkins,安装jdk1.7报错,所以选择的jdk1.8进行安装,但是与后端的jdk版本不一致,这里如果选择配置系统管理里面的”管理节点”进行配置的话,会提示让安装jdk1.8;为了不影响原有版本的使用,这里配置的是”系统管理”à”系统设置”,在里面增加ssh servers也可以达到相同的目的,配置如下:(在这里使用的key进行与远程服务器的通信,首先使133机器能与其它机器无密码登录,然后把133上的私钥拷贝到Jenkins上就可以了)

1、    Datax项目:

新建一个名称为dataxDeploy的并选择自由风格的项目,进去配置,在这里说下有几个重要的点需要注意;一是构建触发器,在这里配置的事Poll scm,配置这个结果就是每隔一段时间去探测源码库中是否更新,更新的话,就会触发构建,配置如下:(本实例配置的是每隔30分钟探测一次,也可以能根据实际的需求更改)

二是在构建配置中选择执行shell,配置如下:(意思就是,进入该项目的工作目录,checkout下来datax项目,并打包成zip的形式)

 

三是,在构建配置中,选择sendfiles or execute commands over ssh(这个选项是由publish over ssh提供的,安装的插件的方式,“系统管理”à”管理插件”à”可选插件”,直接搜索安装就可以了);安装好之后,里面有几个选项需要注意,name是选择前面已经配置好的ssh servers的name名称,source files就是创建的包名,下面还有一个remove prefix的作用是去除target,这里的datax-all.zip 是直接放在dataxDeploy项目下面的,所以可以以下图这种方式书写,如果是另外一种方式的话,就另当别论了,下个项目会介绍;romote directory是把包放在远程主机的目录地址,Exec command也是在远程主机上执行的bash命令,配置如下图:(可以选择多个远程主机)

2、  Erp项目:

这里构建的是maven项目,源码管理里面配置的是SVN的URL地址,访问的用户名和密码,本地存储的位置,默认是直接存储到项目下面,配置如下:

 

Maven构建项目可以直接打包,pre steps选项中选择Invoke top-level Maven targets,在goals中写上clean package,意思就是对下载的内容先清理然后进行编译打包(具体是打成war包还是打成jar包,pom文件中会定义),配置如下:

 

构建完成之后,我们想要做的就是把这个war包发送到远端服务器上,现在就有一个插件Deploy war/ear plugin可以实现,定义本地war路径,定义Tomcat访问的URL地址,以及用户名和密码(这里的用户名和密码是Tomcat manager定义的用户名和密码,具体配置的方法是配置Tomcat的tomcat-users.xml文件,增加入下行:

  <rolerolename="tomcat"/>

  <rolerolename="role1"/>

  <rolerolename="manager-gui" /> 

  <rolerolename="manager-script" /> 

  <rolerolename="manager-status" />

  <userusername="tomcat" password="tomcat"roles="tomcat"/>

  <userusername="both" password="both"roles="tomcat,role1"/>

  <user username="deploy"password="tomcat"roles="manager-gui,manager-script,manager-status" />

然后需要更改webapps\manager\META-INF这个目录下的context文件,把  <ValveclassName="org.apache.catalina.valves.RemoteAddrValve"

        allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

给注释掉,重启Tomcat就OK了);具体Jenkins的配置如下: