jenkins安装及创建自由风格的项目(四)

jinkins官网
jenkins.io/zh/
Jenkins是一个开源软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作,指在提供一个开放易用的软件平台,使软件的持续集成变成可能。
1、安装jdk和jenkins
上传JDK和jenkins安装包,使用rpm -ivh进行安装,安装完JDK运行java测试是否安装成功
[root@jenkins ~]# ll
-rw-r--r-- 1 root root 170023183 Dec 25 03:15 jdk-8u181-linux-x64.rpm
-rw-r--r-- 1 root root 74141787 Dec 25 02:58 jenkins-2.263.2-1.1.noarch.rpm
[root@jenkins ~]# rpm -ivh jenkins-2.263.2-1.1.noarch.rpm
[root@jenkins ~]# rpm -ivh jdk-8u181-linux-x64.rpm
2、配置Jenkins
启动用户修改为root
[root@jenkins ~]# grep "root"/etc/sysconfig/jenkins
JENKINS_USER="root"
启动
[root@jenkins ~]# chkconfig jenkins on
[root@jenkins ~]# systemctl start jenkins
查看端口
[root@jenkins ~]# netstat -lnpt|grep 8080
tcp6 0 0 :::8080 LISTEN 17103/java
jenkins主要的目录
/usr/lib/jenkins/: #jenkins安装目录,WAR包会放在这里
/etc/sysconfig/jenkins: #jenkins配置文件,"端口","JENKINS_HOME"等都可以在这里配置
/var/lib/jenkins/: #默认的JENKINS_HOME
/var/log/jenkins/jenkins.log:#Jenkins日志文件
访问页面进行配置
http://10.0.0.8:8080

[root@jenkins ~]# cat /var/lib/jenkins/secrets/initialAdminPassword
a6535aeb22904622be78c36aa9eea2ce
3、安装插件
安装插件的方式有两种:
1)自动安装可选插件 2)直接上传插件目录到/var/lib/jenkins/plugins/
我们选择自动安装可选插件

创建第一个管理员用户

实例配置默认即可

修改配置admin的管理密码

4、创建一个自由风格的项目freestyle-job



执行一条shell命令、查看运行的当前路径,构建后的产物存储在/var/lib/jenkins/workspace/


[root@jenkins ~]# ll /var/lib/jenkins/workspace/freestyle-job/
total 0
-rw-r--r-- 1 root root 0 Dec 25 04:10 test.txt
5、Jenkins获取git源代码
这里码云导入一个大转盘项目到gitlab仓库,将其代码路径进行复制,在gitlab上面新创建一个项目仓库,将源代码导入进去https://gitee.com/xianzi/html5.git

Jenkins端配置从gitlab获取代码
生成密钥,并将公钥上传在gitlab
[root@jenkins ~]# cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQdlbwJuy/WOXE1O0bZyHyW5pXr3Ryit7FdGORGi9RUVtVSl5h+kTawrlUwAKj9ELwOSX1zDGrMAwJvBgOG2lcnVDhGdWJd55QXtfA8wWCC3Um/PB2JrBMYojwSF9SWCNfYSESSDBhVBrNOP5H81xO3AxxQQFmC16nLVkoCUCm3wksVZhRTaM0P/m1A5Uf8aPV081J5BXo1bINHnlEQXB2Badu25fjR8XDbNM9WH7dqcs6WEpZ0AIKh96YRzMDcs7yiS3bXJhbfm5GE+3Fefun/Njs57ds/2Z/xWjdH57nZECNDNLAkl6e091zSZJy/Oifo3cFeLSlLjlahFt0H52Z root@jenkins

重新对freestyle-job项目进行配置
Repository URL为 git@10.0.0.7:oldboy/dzp.git

添加凭据,将jenkins的私钥上传到凭据中

执行立即构建获取到代码

jenkins服务器查看代码
[root@jenkins jenkins]# cd /var/lib/jenkins/workspace/freestyle-job/
[root@jenkins freestyle-job]# ll
总用量168
-rw-r--r-- 1 root root 164297 2月 20 16:04 html2canvas.min.js
-rw-r--r-- 1 root root 8 2月 20 16:04 README.md
drwxr-xr-x 6 root root 88 2月 20 16:04水果机
drwxr-xr-x 5 root root 59 2月 20 16:04幸运大转盘
6、jenkins代码推送到web
分发公钥

[root@jenkins ~]# ssh-copy-id -i/root/.ssh/id_rsa.pub root@10.0.0.7
[root@jenkins ~]# ssh root@10.0.0.7
Last login: Sat Feb 20 12:39:34 2021 from10.0.0.1

写一个脚本把从git仓库里获取的代码上传到web服务器站点目录下

[root@jenkins ~]# mkdir -p /server/scripts
[root@jenkins ~]# cd /server/scripts/
[root@jenkins scripts]# cat deploy.sh 
#!/bin/sh
Date=$(date +%s)
Code_Dir="/var/lib/jenkins/workspace/freestyle-job"
Web_Dir=/code
Ip=10.0.0.7
Code_Tar() {
   cd $Code_Dir && tar zcf /opt/web_${Date}.tar.gz ./*
}
Scp_Code_Web() {
   scp /opt/web_${Date}.tar.gz root@${Ip}:/opt
}
Code_Tar_Xf() {
   ssh root@$Ip " cd /opt && mkdir web_$Date && tar xf web_${Date}.tar.gz -C web_$Date "
}
Ln_Html() {
   ssh root@$Ip " rm -rf $Web_Dir && ln -s /opt/web_$Date $Web_Dir"
}
Code_Tar;
Scp_Code_Web;
Code_Tar_Xf;
Ln_Html
[root@jenkins scripts]# chmod +x deploy.sh

freestyle-job项目添加构建

立即执行构建,查看网站是否更新成功
http://game.oldboy.com/幸运大转盘/

6、jenkins配置自动触发构建,构建触发器需要设置安全令牌secret token
如果没有安装gitlab Plugin插件,先安装

gitlab上面操作

克隆代码到master上更改代码后进行推送测试是否自动触发

[root@git ~]# git clone git@10.0.0.51:oldboy/dzp.git
正克隆到'dzp'...
remote: Counting objects: 40, done.
remote: Compressing objects: 100% (35/35),done.
remote: Total 40 (delta 7), reused 0 (delta0)
接收对象中: 100% (40/40), 163.70 KiB | 0bytes/s, done.
处理 delta 中: 100%(7/7), done.
[root@git ~]# cd dzp/
[root@git dzp]# ll
总用量168
-rw-r--r-- 1 root root 164297 2月  20 16:21 html2canvas.min.js
-rw-r--r-- 1 root root      8 2月  20 16:21 README.md
drwxr-xr-x 6 root root     88 2月  20 16:21水果机
drwxr-xr-x 5 root root     59 2月  20 16:21幸运大转盘
[root@git dzp]# cd 幸运大转盘/
[root@git 幸运大转盘]#git commit -am "modify index.html"
[master 2b5c819] modify index.html
 1file changed, 2 insertions(+), 2 deletions(-)
[root@git 幸运大转盘]#git push -u origin master

刷新浏览器进行测试

7、配置Jenkins返回构建状态到gitlab
进入gitlab点击用户设置找到访问令牌access tokens

进入Jenkins配置,系统管理---系统设置选项下


设置项目中的执行后操作,然后进行构建测试返回结果

查看测试结果,点击立即构建,返回到gitlab的项目中

posted @ 2021-12-25 16:01  熊孩子Ajie  阅读(246)  评论(0)    收藏  举报