admin 管理员组

文章数量: 1086019


2024年6月7日发(作者:put on weight用法)

Windows7系统下Jenkins+Maven+SVN

搭建自动部署环境

一、安装Jenkins

/content/thank-you-downloading-windows-installer/#stable下载

适用于windows7系统的Jenkins版本。下载完成是msi格式文件,直接点击安装即可。

二、配置Jenkins

1、打开cmd进入Jenkins文件夹(C:Program Files (x86)Jenkins>),输入命令“java

-jar --ajp13Port=-1 --httpPort=8089”即可开启Jenkins服务,后面的绑

定端口号可以自行更改。

2、打开localhost:8089/进入Jenkins主页面,如果系统没有Maven则首先

需要安装Maven,打开“系统管理”页面,选择“系统设置”,在“Maven”一栏点击

“新增Maven”,选择“Install from Apache”,保存本页面,在后面编译的时候系统

就会自动下载安装Maven。如果系统安装过Maven,在本页面Maven配置中添加Maven

目录就行。

3、要达到自动部署的目的,需要安装Jenkins的部署插件,从

/latest/下载Deploy Plugin插件。选择“系统

管理”菜单的“管理插件”,点击“高级”,并在上传插件的一栏上传刚才下载的hpi文

件自动完成插件的安装。

4、返回主页面,由于是第一次进入所以需要创建项目,点击“创建一个新项目”,选

择“构建一个maven项目”,点击“OK”进入项目配置页面,详细配置项很多,大部分

使用默认配置就可以,下面就说说需要我们修改的几个地方:

(1) 源码管理,选择“Subversion”,在“Repository URL”里输入SVN地址,Jenkins

会自动验证地址,并给与提示,点击“enter credential”,在次页面下输入SVN用户名

和密码并保存。

(2) 如果需要配置自动构建的计划,例如我们想让项目每天12点和晚上8点自动构建

一次,只需要在“构建触发器”中选择“Build periodically”,并在“日程表”中输入“ 0

12,20 * * *”。

注:Schedule的配置规则是有5个空格隔开的字符组成,从左到右分别代表:分时

天月年。“*”代表所有,“0 12,20 * * * ”表示“在每年每月每天的12和20点0分”

进行构建。此项不进行配置而选择默认也可以。

(3) 构建后操作,即添加自动部署的设置,点击“增加构建后操作步骤”选择“Deploy

war/ear to a container”。

“WAR/EAR files”里填写需要需要部署的war文件,注意这里使用的是Jenkins

workplace的相对路径,hudon默认的目录在:“C:Documents and Settings用户名

.Jenkins”,workspace目录:“C:Documents and Settings用户名.Jenkins

jobswebworkspace”,最终产生的war在:“C:Documents and Settings用户名

.Jenkins ”,填写“”

即可。

“Context path”里填写部署到tomcat上的文件夹名字。

“Containers”里点击“Add Container”选择“Tomcat 7.x”,填写Tomcat的URL

及管理员帐号的名字和密码,如果没有管理员帐号看下面一小节。

本页面设置完毕,点击“保存”。

三、配置Tomcat

Tomcat里需要配置两个部分,一个是管理员帐号的配置,一个是防止Tomcat自动

锁文件导致重部署失败的配置。

1、设置管理员帐号:打开,在标签里输入“

rolename="manager-gui"/>

username="admin" password="admin" roles="manager-gui,manager-script"/>”,

其中自己设置用户名和密码。

2、防止锁文件,在Windows平台的Tomcat上部署应用后,应用下的个别文件可能

会被Tomcat锁住,解部署的时候删除不掉那些内容,就会导致无法重部署。打开

,在Context元素上设置“antiResourceLocking”属性为“true”,即

”。

完成配置后重启Tomcat。

四、自动编译和部署

在经过上面的配置后,回到Jenkins首页,在首页可以看到刚才添加的项目。点击项

目后面的“构建”图片手动构建,点击完后会在左边的“构建执行状态”显示正在构建的

任务,在自动构建完后,刷新页面,就可以看到构建结果了,如果项目构建失败,点击项

目后面的构建数字(从#1开始递增)进入项目的“Console Output”可以查看项目构建失

败的原因。

五、不利用Jenkins发布到tomcat container的方式发布,而是利用Jenkins插件

Publish Over SSH进行远程自动发布

1、应用场景

不是将war包发布到tomcat容器下,而是先利用该插件将build好的文件上传到远

程linux 的指定目录下,然后利用该插件远程执行脚本将指定目录下的文件复制到tomcat

的执行文件夹下,再利用脚本远程重启tomcat即可

2、发布环境要求

远程tomcat部署在linux上,不支持windows上的远程发布(windows 下执行Shell

脚本时出错)

3、publish over ssh 插件 的安装和配置

① jenkins 控制台下 系统管理->管理插件->可选插件->通过搜索找到 “Publish

Over SSH”,进行勾选安装。安装完毕重起jenkins网页控制台。安装成功后再次进入会

看到如下:

② 配置远程linux SSH的访问权限

1、系统管理->系统设置界面,滚动配置界面直至如下位置,会看到了多了Publish

over SSH的配置选项

2、2、点击”增加” SSH Server,出现如下界面:

3、分别填写远程linux的HostName(登录IP)、userName(linux ssh的用户名)、

勾选,然后输入 ssh登录密码。点击

,如果成功会在下面显示 success。

③ 进入具体的发布工程界面,如下:

1、配置SSH 访问权限

a) 注意:不需要选择发布到容器,如下图:

b) 选择”Send build artifacts over SSH”

c) 填写权限,如下:

2、点击”

填写信息如下:

” 增加Transfers项(将文件copy到远程linux的策略),

1) Transfer Set Source files:需要上传的文件(注意:相对于工作区的路径,可以是

单个文件也可以是目录)

2) Remove prefix:移除目录(只能指定Transfer Set Source files中的目录)

3) Remote directory:远程linux下的目录

Transfer Set中各个配置规则,请参考Jenkins官网地址

/display/JENKINS/Publish+Over#PublishOver-transfe

r

3、配置好的例图如下:

4、上面的脚本如下:

#先用新文件替换tomcat下的旧文件

cp -r /root/deploy/*

/usr/local/my/tomcat/webapps/test/WEB-INF/classes

#关闭tomcat

sh /usr/local/my/tomcat/bin/

sleep 15s

#启动tomcat

sh /usr/local/my/tomcat/bin/

获取tomcat pid的脚本如下:

ps -ef|grep tomcat|grep start|grep -v 'grep'|awk '{print $2}'


本文标签: 配置 构建 部署 需要 点击