Jenkins部署war包到远程tomcat的webapps下

2016-12-30 17:52

因为手动部署好麻烦,要先在eclipse更新代码,然后build一下,再把target下生成的war包复制到tomcat的webapps下,启动tomcat。

首先需要下载一个Jenkins的插件:Deploy to container Plugin ,可以在Jenkins的系统管理->插件管理->可选插件中查找

安装完成后重启Jenkins,在增加构建后操作步骤中会多出一个选项Deploy war/ear to a Container

Jenkins部署war包到远程tomcat的webapps下0

首先新建一个任务,只需要配置代码获取方式,build命令和部署war包配置即可。

1.代码获取,我们是用SVN方式获取代码的。

Jenkins部署war包到远程tomcat的webapps下1


2.build命令。

Jenkins部署war包到远程tomcat的webapps下2

3.war包部署。

Jenkins部署war包到远程tomcat的webapps下3

WAR/EAR files:输入war包的相对路径,如我的war包在新建目录的target下

context path:输入用来访问tomcat的名称,localhost:8080/p**

add container:增加容器,一般选tomcat 7X就可以。这里的username与password需要到tomcat的conf文件夹中的tomcat-users.xml修改。tomcat URL就是你希望把war包部署到的tomcat所在IP地址,最后面不需要再加斜杠/。

tomcat-users.xml中的用户名及密码默认是注释掉的,所以需要删除注释,也可以直接复制以下代码到</tomcat-users>之前。如果只是删除注释的话好像部署不会成功,还需要增加manager开头的三个role才可以。



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