avatar

3.jenkins安装部署

Jenkins安装部署

第1章 jenkins介绍

Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

官网 :https://jenkins.io

第2章 准备环境

jenkins 10.0.0.201

1
2
3
4
5
6
7
[root@jenkins-201 ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
[root@jenkins-201 ~]# uname -r
3.10.0-693.el7.x86_64
[root@jenkins-201 ~]# getenforce
Disabled
[root@jenkins-201 ~]# systemctl stop firewalld

第3章 安装部署

3.1 安装JDK运行环境和jenkins服务

1
2
rpm ‐ivh jdk‐8u181‐linux‐x64.rpm
rpm ‐ivh jenkins‐2.99‐1.1.noarch.rpm

3.2 配置jenkins

启动用户修改为root

1
2
3
4
[root@jenkins-201 ~]# grep "JENKINS_USER" /etc/sysconfig/jenkins
JENKINS_USER="root"
[root@jenkins-201 ~]# systemctl start jenkins
[root@jenkins-201 ~]# systemctl enable jenkins

3.3 打开页面配置

3.4 插件安装

(跳过安装插件,直接上传插件到目录)和修改登录密码

  1. 自动安装可选插件
  2. 手动下载插件上传安装
  3. 插件放入插件目录
1
2
3
4
5
[root@jenkins-201 ~]# cd /var/lib/jenkins/
[root@jenkins-201 ~]#ll #jobs为每次构建后构建的结果目录,plugins为插件目录
drwxr-xr-x 97 root root 8192 Sep 4 22:32 plugins

#上传插件包解压到plugins下执行重启 systemctl restart jenkins
  1. jenkins主要的目录
1
2
3
4
5
/usr/lib/jenkins/:jenkins安装目录,WAR包会放在这里
/etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置
/var/lib/jenkins/:默认的JENKINS_HOME
/var/log/jenkins/jenkins.log:Jenkins日志文件
/etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置
  1. 创建一个自由风格的项目freestyle‐job

丢失旧的构建

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

  1. jenkins获取git源码

这里我们有码云导入一个HTML页面的监控平台到gitlab仓库

jenkins端配置从git获取代码,由于我们dev用户是配置在jenkins上,所以无需认证即可下载代码

  1. 执行立即构建获取到代码

  1. 写一个脚本把从git仓库里获取的代码上传到web服务器站点目录下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
[root@jenkins-201 /server/scripts]# cat deploy.sh 
#!/bin/bash
CODEDIR=/var/lib/jenkins/workspace/freestyle-job/
TIME=`date +%F-%H-%M-%S`
IP=10.0.1.7
TAR(){
cd $CODEDIR
tar zcf /opt/web-${TIME}.tar.gz ./*
}
CP(){
scp /opt/web-${TIME}.tar.gz $IP:/code/
}

XF(){
ssh $IP "cd /code && mkdir web-$TIME"
ssh $IP "cd /code && tar xf web-${TIME}.tar.gz -C web-$TIME"
ssh $IP "rm -rf /code/web-${TIME}.tar.gz"
}

LN(){
ssh $IP "rm -rf /code/www && ln -s /code/web-$TIME /code/www"
}

main(){
TAR
CP
XF
LN
}
main
  1. 使用jenkins调用部署脚本(此处写脚本全路径脚本名称)测试

  1. 配置自动触发构建、需要设置安全令牌Secret token

  1. 克隆代码到master上更改代码后进行推送测试是否自动触发
1
git clone git@10.0.1.200:oldboy/dzp.git
  1. Jenkins配置jenkins返回构建状态到gitlab

系统管理‐系统设置选项下

进行认证配置进入gitlab点击用户设置找到访问令牌Access Tokens

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

查看测试结果

文章作者: Wu Fei
文章链接: http://linuxwf.com/2020/04/15/3-jenkins%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WF's Blog
打赏
  • 微信
    微信
  • 支付宝
    支付宝

评论