Linux(centos7)安装Jenkins与使用maven和

2018-11-22  本文已影响0人  不给起这个名字

自动化部署

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

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


image.png

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

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

image.png 或者

把war上传到linux
启动jenkins 不指定端口默认为8080 \color{red}{也可指定jenkins的端口java -jar jenkins.war --httpPort=9090}
java -jar jenkins.war (前台启动方式 ctrl+c就关闭)
nohup java -jar jenkins.war --httpPort=8080 > /data/log/jenkins.log & (推荐后台启动方式)

关闭防火墙
systemctl stop firewalld

http:localhost:8080 访问Jenkins


image.png

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


image.png
点击安装推荐的插件
image.png

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


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

Jenkins安装成功

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

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

image.png
2. Deploy to Container
image.png

安装完插件后,重启Jenkins

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

image.png
image.png

JDK配置

image.png

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

image.png

全局工具配置配置完成

新建任务


image.png

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

image.png
这样就能够从gitlab上获取到源码,点击 image.png 或者立即构建,就会执行mvn install打包(例子会生成war包)
image.png
image.png

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

image.png
image.png

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


image.png

这里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"/>


image.png

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


image.png
指谁能访问,注释掉context或者把127修改成\d+ 这是正则表达式
image.png
点击,登陆上面配置的账号密码 tomcat_user 123456 能登录进去证明配置成功
image.png

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


image.png

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

接下来继续配置Jenkins

image.png
image.png
添加
image.png
保存
点击立即构建
image.png
正在构建(就是重新打包)
image.png
构建完成后查看部署项目的服务器上tomcat的webapp,就能看到abc.war。 image.png

\color{red}{部署项目的服务器与Jenkins可以不是同一台服务器,这里的例子就是不相同的两台linux服务器}

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

image.png

\color{red}{现在测试修改代码然后提交到gitlab上。再点立即构建。看页面会不会修改}
更新代码提交到gitlab

image.png
点击立即构建
image.png
说明构建成功

\color{red}{但是每次都要手动去点击立即构建,能不能在git pull操作时自动触发构建}

安装Gitlab Hook Plugin插件:

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

image.png
image.png

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


身份验证令牌
image.png

保存


image.png
image.png

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

gitlab钩子配置
image.png
add webhook之后会报这么一个错
image.png
gitlab 10.6 版本以后为了安全,默认不允许向本地网络发送webhook请求,如果想向本地网络发送webhook请求,则需要使用管理员帐号登录,默认管理员帐号是admin@example.com,密码就是你gitlab搭建好之后第一次输入的密码
image.png
image.png
image.png
再配置钩子
image.png
测试一下配置是否成功
image.png
Hook executed successfully: HTTP 201表示成功
image.png
这样就完成自动构建的配置了,直接git pull 提交代码,就会触发立即构建
image.png
image.png
大功告成
这里是war的jenkins构建。不知道springboot的jar和dubbo配置是否一致,后续学习
上一篇下一篇

猜你喜欢

热点阅读