②Jenkins集成—集成构建部署
之前的博文介绍了Jenkins的入门安装,本文主要介绍如何使用jenkins进行git项目的集成构建与部署
1、首先进行全局工具配置
查看下本机的jdk、maven、git安装路径
echo $PATH
全局工具配置:系统管理->全局工具配置
JDK与Git环境配置
配置Ant与Maven环境,并保存应用
2、安装maven项目需要的插件:系统管理->插件管理
Maven Integration plugin
SSH
Deploy to container Plugin
maven集成插件:构建maven项目要用到的插件
shell插件:搜索ssh 选择ssh plugin插件安装即可。
GitLab插件:从git网址拉取代码的插件
容器部署插件:可以允许构建完之后可以进行项目的部署
3、新建一个maven的构建项目
3.1点击新建任务
输入描述,设置丢弃旧的构建
如果出现以下报错,是因为存储不够,内存满了,
可以通过一、设置丢弃旧策略 二、将存储移动到存储容量大的盘
把默认目录/root/.jenkins,更改到其他大目录或者磁盘中。 我的是在centos中安装的,我把默认目录转移到 /home/jenkins/jenkinsWork/中
cp -r /root/.jenkins /home/jenkins/jenkinsWork/
更改目录所属用户
chown –R root /home/jenkins/jenkinsWork/
接着执行以下命令,更改jenkins存储目录
DAEMON_ARGS="--name=$NAME --inherit --env=JENKINS_HOME=/home/jenkins/jenkinsWork/ --output=$JENKINS_LOG --pidfile=$PIDFILE"
最后重启jenkins
其他情况可以参考博文:https://blog.csdn.net/ling811/article/details/74991899
3.2源码管理配置
本文使用的源码来自git,输入git的url,添加登录凭证,选择代码分支
凭证的添加,可以通过凭据,然后点击添加凭证进行相关凭证的添加:
3.3构建触发器,可以设置触发构建的时间策略
定时脚本可参考
https://blog.csdn.net/zzy1078689276/article/details/77520441
如果选择提交代码就出发构建
要到git上面具体的setting新增Webhooks,如图
3.4 maven构建之前,maven构建配置,maven构建后的操作步骤
3.5 项目构建后的操作。本文主要介绍,如何将项目部署到服务器的容器上
进入到tomcat下的conf目录,修改vim tomcat-users.xml文件,新增以下配置,如图所示:
<role rolename="manager-gui"/>
<role rolename="manager-status"/>
<role rolename="manager-jmx"/>
<role rolename="manager-script"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui,manager-status,manager-jmx,manager-script,admin-gui,admin-script"/>
在全局凭证那,新增凭证。至此该配置的都配置好了,
3.6接着我们开始构建项目
红色为失败,蓝色为成功,可以点击具体的构建项目,然后通过控制台查看具体报错
比如本文的报错,估摸者是服务器没启动,启动tomcat重新试下
进入tomcat的bin目录./catalina start & 启动tomcat,然后重新试下,地址栏输入项目具体地址:
http://118.24.48.158:9080/testJenkins/index.jsp
效果如图:
最新文章
- Step by Step 配置使用HTTPS的ASP.NET Web应用[转载]
- Ubuntu下面su初始密码设置
- 烂泥:Linux源码包制作RPM包之Apache
- Leetcode 114, Flatten Binary Tree to Linked List
- html5学习小结,float练习。
- 致vi老大 2011.1
- STL容器是否是线程安全的
- iOSstoryboard xib下label怎么自适应宽度高度
- 移动App Crash的测试用例设计
- 关闭数据库下的所有连接操作 sql存储过程
- FTP命令具体解释(含操作实例)
- iOS 解决键盘挡住输入框的问题
- 大数据ssh疑点跟踪
- linux系统 之 curl命令
- easyui dialog 和 dategrid相关设置与应用
- Fetch的使用; Yarn命令集; NVM的管理;VueCLi3的使用;
- C++类和对象(一)&;&;实现offsetof宏&;&;this指针
- vue实例的方法
- 16 go操作Mysql
- SEL和IMP
热门文章
- bzoj3629 / P4397 [JLOI2014]聪明的燕姿
- Sublime Text3编辑器简介
- Ubuntu16.04下安装tensorflow(GPU加速)【转】
- Today&#39;s harvest !!!
- ImportError: cannot import name &#39;izip &; TypeError: &#39;float&#39; object cannot be interpreted as an integer
- php 添加时间戳
- python 执行字符串中的python代码
- Flutter的需要与原生交互的一些常用库
- [Kafka] - Kafka Java Consumer实现(二)
- Spring MVC文件上传教程 commons-io/commons-uploadfile