发布时间:2024-01-10 19:30
在【Manage Jenkins】- 【Global Tool Configuration】中配置Maven、Jdk、Git等。界面如下:
Maven Configuration
创建项目
点击【首页】- 【New Item】,进入创建项目页面,填写名称,选择“Freestyle project”,然后点击“OK”操作,进入下一步操作。
Source Code Management
这一步需要先安装Git插件,否则不会出现Git选项,安装插件的步骤这里不再重复。这里选择Git,然后配置Git代码库路径,然后新增Credentials,没有创建的话,可以通过“Add”添加即可。
Post-build Actions配置
这里是配置需要发布到的Tomcat。首先需要安装deploy插件,不然没有“Deploy war/ear to a container”选项。
首先需要配置Tomcat管理员用户,即在tomcat-users.xml配置文件中,增加如下配置:
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="admin" password="admin" roles="manager-gui,manager-script,manager-jmx,manager-status,admin,manager"/>
然后重新启动该Tomcat。通过浏览器访问,如下图所示。
注:该Tomcat不是部署Jenkins的Tomcat。
配置Deploy war/ear to a container相关参数,如下图所示:
其中,War/EAR files指的是maven构建之后的路径,Context path指的是发布后的访问路径,Container指的是web服务器,Manager user name 指的是tomcat的管理用户名,Manager password是Tomcat管理员密码,Tomcat URL指Tomcat的访问的根目录。
通过【My Views】选择指定的流水线项目,进入到该项目中,如下图所示。
然后,点击【Build Now】开始构建项目,这个时候会出现新的构建记录, 如下图所示,通过“Console Output”可以查看,构建日志。
注:构建记录,红色表示构建识别,蓝色构建成功,闪烁状态表示正在构建中。
1. ERROR: Error cloning remote repo 'origin’
一般都是Git 用户密码不正确造成的。
2. Server returned HTTP response code: 403 for URL: http://xxxx
该错误存在两种可能性:
1、上述提到的Tomcat管理员用户权限不够
2、远程的Tomcat没有开启远程发布的权限。
第一种情况,按照上述得修改即可。第二种情况,根据下面方式修改:
1>、修改tomcat /webapps/manager/META-INF/context.xml的文件,
把下列内容
<Context antiResourceLocking="false" privileged="true">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
Context>
改成下面内容即可:
<Context antiResourceLocking="false" privileged="true">
Context>
参考文档:《The username you provided is not allowed to use the text-based Tomcat Manager (error 403) when deploying on remote Tomcat8 using Jenkins》
3. No valid crumb was included in the reques
Jenkins在http请求头部中放置了一个名为.crumb的token。在使用反向代理时,如果Jenkins设置中勾选了“Prevent Cross Site Request Forgery exploits”,代理服务器会认为.crumb为非法头部而去掉,导致跳转失败。
解决方案:
在Jenkins全局安全设置中取消勾选“Prevent Cross Site Request Forgery exploits”,如下图:
4. FAIL - Deployed application at context path /jeesite-icity but context failed to start
当使用Jenkins进行构建的时候报这个错误, 一般是因为代码本身有问题, 可以把Jenkins打好的包放到本地容器中进行验证。