Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

自动化部署

“自动化”的具体体现:向版本库提交新的代码后,应用服务器上自动部署,用户或测试人员使用的马上就是最新的应用程序

Jenkins获取源码完成打包和部署

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

image.png

Jenkins 自身采用 Java 开发,所以要必须安装 JDK; 集成的项目基于 Maven 构架,所以 Maven 也必须安装;
首先要安装JDK1.8和maven
安装JDK1.8和Maven教程

使用java通用的war
到官网下载Jenkins https://jenkins.io/download/

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

或者

 

把war上传到linux
启动jenkins 不指定端口默认为8080Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署
java -jar jenkins.war (前台启动方式 ctrl+c就关闭)
nohup java -jar jenkins.war --httpPort=8080 > /data/log/jenkins.log & (推荐后台启动方式)

关闭防火墙
systemctl stop firewalld

http:localhost:8080 访问Jenkins

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

cat /root/.jenkins/secrets/initialAdminPassword查看管理员密码
输入密码进入到

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


点击安装推荐的插件

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

image.png

 

等待安装(需要linux能够上网) 安装完成

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


右下角使用admin继续登陆 下一步完成之后 如果需要登陆admin 密码是上面查看的管理员密码

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

Jenkins安装成功

使用maven和git搭建Jenkins的自动部署
需要安装git git安装教程

在安装Jenkins中安装所需要的插件
点击系统管理->插件管理 ,安装以下插件
1. Maven Integration jenkins 利用maven编译,打包,所需插件

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


2. Deploy to Container

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

安装完插件后,重启Jenkins

系统管理->全局工具配置 ,配置路径
maven配置

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

JDK配置

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

git配置
which git查询git的安装路径

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

全局工具配置配置完成

新建任务

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

这里使用自己搭建的gitlab做为仓库,因为github的自动构建需要Jenkins有外网才行
配置git

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


这样就能够从gitlab上获取到源码,点击

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

或者立即构建,就会执行mvn install打包(例子会生成war包)

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

把打包好的项目放到需要部署的的服务器上
配置构建后操作 构建的项目在target目录下

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

配置需要把项目部署到哪个服务器的tomcat上

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

这里Jenkins的服务器是192.168.79.131。

需要部署的项目的服务器放在192.168.79.132中,需要设置tomcat的账号密码,jenkins才能把部署传上去

到192.168.79.132的tomcat配置文件中设置账号密码
vim /data/apache-tomcat-8.5.35/conf/tomcat-users.xml
加上
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username=""tomcat_user" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status"/>

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

tomcat8.5进行管理后台还需要配置webapps/manager/META-INF/context.xml
修改前

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


指谁能访问,注释掉context或者把127修改成\d+ 这是正则表达式

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


点击,登陆上面配置的账号密码 tomcat_user 123456 能登录进去证明配置成功

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

在配置文件server.xml加上修改 URL 地址的编码解码字符集

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

完成需要部署的服务器的tomcat配置

接下来继续配置Jenkins

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


添加

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


保存
点击立即构建

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


正在构建(就是重新打包)

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


构建完成后查看部署项目的服务器上tomcat的webapp,就能看到abc.war。

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

访问http://192.168.79.132:8080/abc/就能访问到部署的项目。

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署
更新代码提交到gitlab

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


点击立即构建

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


说明构建成功

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

安装Gitlab Hook Plugin插件:

系统管理-管理插件-可选插件-Gitlab Hook和Build Authorization Token Root

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

在linux上执行命令生成token(身份验证令牌)
openssl rand -hex 12

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

身份验证令牌

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

保存

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

配置gitlab钩子配置
进到gitlab的Settings-Integrations

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

gitlab钩子配置

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署


add webhook之后会报这么一个错

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


gitlab 10.6 版本以后为了安全,默认不允许向本地网络发送webhook请求,如果想向本地网络发送webhook请求,则需要使用管理员帐号登录,默认管理员帐号是[email protected],密码就是你gitlab搭建好之后第一次输入的密码

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


再配置钩子

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


测试一下配置是否成功

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


Hook executed successfully: HTTP 201表示成功

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 


这样就完成自动构建的配置了,直接git pull 提交代码,就会触发立即构建

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署

 

 

Linux(centos7)安装Jenkins与使用maven和git搭建Jenkins的自动部署


大功告成
这里是war的jenkins构建。不知道springboot的jar和dubbo配置是否一致,后续学习