Jenkins 安装

目录

1、部署 Jenkins

安装配置 Jenkins

解锁 Jenkins

安装 Jenkins 插件

创建管理员账号

手动安装插件

2、Jenkins 从 GitLat 拉取代码

安装 Jenkins 插件

在 node-16 上生成密钥对

把公钥配置到 gitlab 上

把 root 用户私钥配置到 jenkins 上

Jenkins 创建一个任务

Jenkins 测试拉取代码

3、将代码发布到 Web 服务器上

部署服务,配置免密、提权

创建自动上传web的脚本

把脚本添加到 Jenkins 中

测试构建

4、实战:更新Gitlab代码触发Jenkins自动构建

配置身份验证令牌

Jenkins 上配置触发器

在gitlab项目 配置 webhook

综合测试:同步远程web项目

5、使用 Build Pipeline 插件显示流程图

安装 Build Pipeline 插件

给项目添加视图

查看视图


1、部署 Jenkins
安装配置 Jenkins

阿里:jenkins-redhat-stable安装包下载_开源镜像站-阿里云

清华软件站:Index of /jenkins/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

# 安装依赖包
yum install -y fontconfig java-11-openjdk

# 安装 jekins 
yum install -y jenkins-2.387.3-1.1.noarch.rpm

# 修改配置文件
vim /etc/sysconfig/jenkins 
JENKINS_USER="root" #修改默认运行账号

# 启动 jenkins 
systemctl start jenkins 
systemctl enable jenkins 
systemctl status jenkins

# 查看端口:Jenkins 默认使用 8080 端口
netstat -antup | grep 8080

# 更改 jenkins 插件下载地址
# 更改 jenkins 插件下载地址为清华源,加快下载速度
sed -i 's/https:\/\/updates.jenkins.io\/download/http:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' /var/lib/jenkins/updates/default.json && \
sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' /var/lib/jenkins/updates/default.json 


systemctl restart jenkins
解锁 Jenkins

访问Jenkins:192.168.137.116:8080

4f9fbaced802496ca0bc57d53bda347a
安装 Jenkins 插件

选择默认即可,会安装通用的社区插件,剩下的可以在使用的时候再进行安装。

注意:如果在这里安装插件需要连网才能下载插件。

创建管理员账号

这里创建一个账号,如果点击的是使用 admin 账号继续,那么 admin 的密码就是刚才的激活密码。

手动安装插件

国内源 https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/

修改默认插件地址为国内源

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

2、Jenkins 从 GitLat 拉取代码
安装 Jenkins 插件

需要安装以下插件:

Credentials Plugin

签名证书管理插件(默认已经安装)

Gitlab Plugin

安装后从 gitlab 获取代码

Git Plugin 和 Git Client Plugin

用于 jenkins 在 gitlab 中拉取源码

GitLab Hook

gitlab 触发 jenkins 构建项目

Gitlab Authentication

gitlab 和 jenkins 认证相关的插件

SSH Plugin

进程执行 shell 脚本

Publish Over SSH

用于通过 ssh 部署应用

① 安装 GitLab 插件

② 安装 Git 插件

Git 插件默认也已经安装,不用管

③ 安装 SSH 插件

在 node-16 上生成密钥对

把公钥配置到 gitlab 上
cat .ssh/id_rsa.pub

测试发现不需要密码就可以直接 clone 项目,免密 clone OK!

把 root 用户私钥配置到 jenkins 上

root 公钥在 gitlab,root 私钥在 jenkins,这样 jenkins 就可以直接拉取 gitlab 上的代码。

全局凭证(不受限制)

Jenkins 创建一个任务

分支要么是*/master,要么是*/main

注意如果设置git仓库出现如上错误,请拷贝主机的 known 文件到 jenkins 用户家目录下

cp .ssh/known_hosts /var/lib/jenkins/.ssh/known_hosts
Jenkins 测试拉取代码

3、将代码发布到 Web 服务器上

可以通过执行命令或脚本的方式进行代码发布,我使用 root 用户在各个 web 服务器上发布代码。大家也可以建立一些普通用户如果 www 或 apache 来发布。 如果使用普通用户发布代码,要保持所有服务器上的用户 id 一致,这样没有权限 的问题。 我们这里直接使用 root 用户来发布。

部署服务,配置免密、提权

部署 apache 服务

# 在node-17、16上安装apache
yum install -y httpd 
systemctl start httpd

配置 免密登录

需要 jenkins 自动发布代码的服务器都需要配置免密认证

ssh-copy-id root@192.168.137.117
ssh-copy-id root@192.168.137.116

配置 jenkins 用户 sudu 权限

[root@node-17 ~] visudo
jenkins ALL=(ALL) NOPASSWD: /usr/bin/ssh
创建自动上传web的脚本
# 创建自动上传 web 代码的脚本
vim deploy.sh 
#------------------------------------------------
#!/bin/bash 
echo $USER 
cd /var/lib/jenkins/workspace/web-test 
scp -r ./* root@192.168.1.12:/var/www/html/ 
scp -r ./* root@192.168.1.13:/var/www/html/ 
#------------------------------------------------

chmod +x deploy.sh

把脚本添加到 Jenkins 中

在 jenkins “增加构建步骤”写入上传代码脚本,方便 jenkins 使用脚本自动部署。

测试构建

4、实战:更新Gitlab代码触发Jenkins自动构建

实战场景:在公司的测试环境当中,当开发人员向 gitlab 仓库提交代码后,gitlab 自动通知 jenkins 进行构建项目、代码质量测试然后部署至测试环境,这里先暂时部署到测试环境。对于生产环境,后期使用手动部署代码。

配置身份验证令牌

需要安装的插件: Gitlab Hook Plugin(之前已经安装过)、Build Authorization Token Root 和 Build Token Trigger

# 生成身份令牌:在 jenkins 服务器上生成 Token,openssl rand 生成随机密码
[root@node-17 ~] openssl rand -hex 12 # 779a3654b0dbb0e71cf65659
  • -hex:输出结果为 16 进制数据; 数字 12 是指定生成的随机字符为 12 字节, 即 24 个 16 进制个数。
Jenkins 上配置触发器

在gitlab项目 配置 webhook

URL格式:http://jenkins 地址/buildByToken/build?job=jenkins 项目名&token=token 值

http://192.168.137.117:8080/buildByToken/build?job=test&token=779a3654b0dbb0e71cf65659

解决: 这是因为 gitlab 10.6 版本以后为了安全,不允许向本地网络发送 webhook 请求, 如果想向本地网络发送 webhook 请求,则需要使用管理员帐号登录,去修改配置。

综合测试:同步远程web项目

使用我们的 windows 客户端和 linux 客户端都可以,我这里使用 windows 客户端

5、使用 Build Pipeline 插件显示流程图
安装 Build Pipeline 插件

给项目添加视图

查看视图

  • 12
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
安装 Jenkins 有不同的方法,取决于你使用的操作系统。以下是一些常见操作系统上安装 Jenkins 的方法: ### Ubuntu/Debian 1. 更新系统软件包: ```shell sudo apt update sudo apt upgrade ``` 2. 安装 Java 运行环境: ```shell sudo apt install openjdk-8-jdk ``` 3. 添加 Jenkins 的密钥和存储库: ```shell wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' ``` 4. 更新软件包列表并安装 Jenkins: ```shell sudo apt update sudo apt install jenkins ``` 5. 启动 Jenkins 服务: ```shell sudo systemctl start jenkins ``` 6. 检查 Jenkins 服务状态: ```shell sudo systemctl status jenkins ``` ### CentOS/RHEL 1. 安装 Java 运行环境: ```shell sudo yum install java-1.8.0-openjdk-devel ``` 2. 添加 Jenkins 的仓库和密钥: ```shell sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key ``` 3. 安装 Jenkins: ```shell sudo yum install jenkins ``` 4. 启动 Jenkins 服务: ```shell sudo systemctl start jenkins ``` 5. 检查 Jenkins 服务状态: ```shell sudo systemctl status jenkins ``` 安装完成后,你可以通过在浏览器中访问 `http://服务器IP地址:8080` 来访问 Jenkins 控制台,并按照屏幕上的指示进行初始化设置。 请注意,上述步骤仅提供了一种常见的安装方法,具体步骤可能因操作系统版本和配置而有所不同。确保参考适合你的操作系统的文档或官方文档进行安装

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值