jenkins的安装和使用
jenkins
官网 jenkins.io
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。
1.安装准备
装备两台服务器 关闭selinux和防火墙
内存2G 50G+硬盘
jenkins 10.0.0.201
nexus 10.0.0.202
2.安装JDK运行环境和jenkins服务
上传JDK和jenkins rpm安装包,使用rpm -ivh进行安装,安装完JDK运维java测试是否安装成功
https://pan.baidu.com/s/1-GL9mo4HV5jqokiCYrSFTg
rpm -ivh jdk-8u181-linux-x64.rpm rpm -ivh jenkins-2.99-1.1.noarch.rpm
3.配置jenkins
启动用户修改为root vim /etc/sysconfig/jenkins JENKINS_USER="root" [root@CentOS7 ~]# systemctl start jenkins [root@CentOS7 ~]# systemctl enable jenkins
访问页面进行配置
插件安装
jenkins插件:https://pan.baidu.com/s/15okA3HUqejLTfvDy5VnU6g
插件放入插件目录
[root@CentOS7 ~]# cd /var/lib/jenkins/ [root@CentOS7 jenkins]# ll jobs为每次构建后构建的结果目录,plugins为插件目录 drwxr-xr-x 2 root root 6 8月 26 00:31 jobs drwxr-xr-x 2 root root 6 8月 26 00:31 plugins
上传插件包解压到plugins下执行重启 systemctl restart jenkins
jenkins主要的目录
/usr/lib/jenkins/: jenkins安装目录,WAR包会放在这里 /etc/sysconfig/jenkins: jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置 /var/lib/jenkins/: 默认的JENKINS_HOME /var/log/jenkins/jenkins.log:Jenkins日志文件
创建一个自由风格的项目freestyle-job
执行一条shell命令、查看运行的当前路径,构建后的产物存储在/var/lib/jenkins/workspace/
jenkins获取git源码,这里我们有码云导入一个HTML页面的监控平台到gitlab仓库
jenkins端配置从git获取代码,由于我们dev用户是配置在jenkins上,所以无需认证即可下载代码
执行立即构建获取到代码
写一个脚本把从git仓库里获取的代码上传到web服务器站点目录下
#!/bin/sh DATE=$(date +%Y-%m-%d-%H-%M-%S) CODE_DIR="/var/lib/jenkins/workspace/my-freestyle-job" WEB_DIR="/usr/share/nginx/" get_code_tar(){ cd $CODE_DIR && tar zcf /opt/web-$DATE.tar.gz ./* } scp_code_web(){ scp /opt/web-$DATE.tar.gz 10.0.0.7:$WEB_DIR } code_tarxf(){ ssh 10.0.0.7 "cd $WEB_DIR &&mkdir web-$DATE && tar xf web-$DATE.tar.gz -C web-$DATE" } ln_html(){ ssh 10.0.0.7 "cd $WEB_DIR && rm -rf html && ln -s web-$DATE html" } main(){ get_code_tar; scp_code_web; code_tarxf; ln_html; } main
使用jenkins调用部署脚本(此处写脚本全路径脚本名称)测试
配置自动触发构建、需要设置安全令牌Secret token
克隆代码到master上更改代码后进行推送测试是否自动触发
[root@git ~]# git clone git@10.0.0.203:oldboy/monitor.git
克隆后更改代码进行推送
Jenkins配置jenkins返回构建状态到gitlab
系统管理-系统设置选项下
进行认证配置进入gitlab点击用户设置找到访问令牌Access Tokens
下一步设置项目中的执行后操作。然后进行构建测试返回结果
查看测试结果