jenkins环境搭建

Jenkins启动方式有两种

1,  直接启动war包,java –jar Jenkins.war

2,  将war包放到容器中,将war包放到tomcat的webapp目录下,启动tomcat即可

Jenkins默认会放在运行用户的根目录下的.jenkins 中

如果使用容器启动可以修改目录

1,  使用web容器的管理工具设置JENKINS_HOME参数

在tomcat的catalina.sh 中编辑

在# OS specific support.  $var _must_ be set to either true or false.上面添加:export JENKINS_HOME=""

在引号中填入你的路径

2,  在启动容器之前,设置JENKINS_HOME环境变量

在/etc/profile中编辑

在最后加入:export JENKINS_HOME=xxxx,保存生效

使用容器启动,jenkins使用的端口号即为容器的端口号,修改需要修改容器端口

使用war包直接启动,修改启动命令

java -jar jenkins.war --ajp13Port=-1 --httpPort=8081

 

Jenkins 系统设置

单击系统管理—global tool configure中设置jdk,git,maven等安装信息

取消选中的自动安装复选框,输入已安装的信息即可

1,         jdk,Jenkins支持sun jdk 不支持openjdk,别名任意

 

 

2,         git

 

 

此处的地址为git的可执行路径

3,         maven

 

 

Jenkins创建job

1,         创建项目,输入job名称,选择项目风格,单击OK

2,         进行项目源配置

配置git项目源,查看git配置说明

构建触发器,即什么时候执行jenkins自动化部署

Post Steps

使用maven项目,第一次会提示没有pom.xml文件,不用处理,git拉回项目之后会有pom.xml文件的

A,本地tomcat部署

选择run only if build success or is unstable之后执行shell

#!/bin/bash

#copy file and restart tomcat

export JAVA_HOME=””jdk路径

export CATALINA_HOME=””tomcat容器位置

export CATALINA_BASE=””tomcat容器位置

export BUILD_ID=dontKillMe

export BUILD_ID=dontKillMe这一句很重要,因为该job启动完后执行下一job,jenkins直接把tomcat进程杀了,所以无论脚本中怎么写了启动tomcat的命令,他是不会启动的。虽然上述截图中显示了Tomcat started、server restarted但是访问项目地址是访问不了的,不明白

 

tomcat_path=””tomcat路径

project=””项目名称

war_name=””打包后的war包名称

war_path=http://ip:port/jenkins/job/ManenDemo/ws/targetserver_port=port 只修改ip和port

file_path=~/.jenkins/jobs/ManenDemo/workspace/spring_provider/target 编译好的war包地址

 

$tomcat_path/bin/shutdown.sh

sleep 3s

echo "rm -rf ${tomcat_path}/webapps/ROOT/*"

rm -rf ${tomcat_path}/webapps/ROOT/*

cd $file_path

cp ${war_name} ${tomcat_path}/webapps/ROOT/

cd $tomcat_path/webapps/ROOT/

unzip ${war_name}

rm -rf ${war_name}

sleep 5s

#$tomcat_path/bin/startup.sh

cd $tomcat_path/bin/

./startup.sh 

echo "server restarted"

b,tomcat是远程的

      使用脚本的方式部署到远程tomcat

      使用Deploy to container Plugin插件部署到远程tomcat

      需要安装在jenkins中安装插件Deploy to container Plugin

    在jenkins的构建后步骤中选择deploy war/ear to a container

   

 

其中war/ear就是当前项目下的构建打包好的war包地址,使用相对地址,如果不是自动打包,需将已有war包放在当前项目路径下

Container的用户名密码为tomcat管理员的用户密码

需要设置远程tomcat的管理员用户名密码,修改远程Tomcat容器下的conf–tomcat-users.xml文件

<role rolename="tomcat"/> 
<role rolename="role1"/> 
<role rolename="manager-script"/> 
<role rolename="manager-gui"/> 
<role rolename="manager-status"/> 
<role rolename="admin-gui"/> 
<role rolename="admin-script"/> 
<user username="admin" password="123456" roles="manager-gui,manager-script,tomcat,admin-gui,admin-script"/> 

这里需要在构建之前先启动tomcat,不然会报错,提示拒绝连接等信息

posted @ 2017-06-21 15:03  hellowcf  阅读(363)  评论(0编辑  收藏  举报