目 录CONTENT

文章目录

Jenkins持续集成

简中仙
2023-05-25 / 0 评论 / 0 点赞 / 69 阅读 / 0 字 / 正在检测是否收录...
温馨提示:
本文最后更新于2024-07-16,若内容或图片失效,请留言反馈。 本文如有错误或者侵权的地方,欢迎您批评指正!

一、jenkins简介

Jenkins是一个自动化服务器,目前发展超过15年,比较成熟的CI工具(也可以CD)能够实现自动化集成发布。建立好流水线后,期间无需专业运维人员介入,开发人员随时发布部署。

部分应用场景:

  • 集成svn/git客户端实现源代码下载检出
  • 集成maven/ant/gradle/npm等构建工具实现源码编译打包单元测试
  • 集成sonarqube对源代码进行质量检查(坏味道、复杂度、新增bug等)
  • 集成SaltStack/Ansible实现自动化部署发布
  • 集成Jmeter/Soar/Kubernetes/.....
  • 可以自定义插件或者脚本通过jenkins传参运行

可以说Jenkins比较灵活插件资源丰富,日常运维工作都可以自动化。

注意:

1、从 Jenkins 2.357(于 2022 年 6 月 28 日发布)和 2.361.1 LTS 版本开始,Jenkins 需要 Java 11 或更高版本。

2、Jenkins 项目决定在 2023 年末结束对 Red Hat Enterprise Linux 7 的支持,而不是等到 2024 年。2023年 11 月 16 日之后,Jenkins 项目将不再支持在 Red Hat Enterprise Linux 7 或其衍生版本上运行 Jenkins。2023 年 11 月 16 日之后将不再支持基于 CentOS 7 的 Jenkins 容器映像。

附:Jenkins 开发人员预计不会在 2023 年 11 月 16 日之后接受专门用于修复 Red Hat Enterprise Linux 7 或其衍生版本问题的补丁,Red Hat Enterprise Linux 7 及其衍生产品的 Jenkins 项目测试将于 2023 年 11 月 16 日或之前停止。Jenkins 插件(例如 ssh 代理插件和 git 插件)将可以自由删除它们包含的支持 Red Hat 中包含的旧软件版本的代码Hat Enterprise Linux 7 及其衍生产品。

参考链接:

1、https://www.jenkins.io/blog/2022/06/28/require-java-11/

2、https://www.jenkins.io/blog/2023/05/30/operating-system-end-of-life/

二、安装jenkins

1、yum安装方式

1、安装软件源(lts版本)

# wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo --no-check-certificate
# rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

2、安装java环境

# 卸载自带java8环境
# yum -y remove java-1.8.0*
# yum -y remove tzdata-java.noarch
# yum -y remove javapackages-tools.noarch
# java11版本和java17版本都行,推荐java17
# wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm
# rpm -ivh jdk-17_linux-x64_bin.rpm

3、安装jenkins

# yum -y install jenkins --nogpgcheck
# yum -y update jenkins --nogpgcheck		# 更新jenkins
# systemctl enable jenkins
# systemctl start jenkins

4、获取管理员密码

# cat /var/lib/jenkins/secrets/initialAdminPassword 
3713e68d1863430c886350d7cb2737d4

2、war包安装

# wget http://mirrors.jenkins.io/war-stable/2.346.1/jenkins.war
# nohup java -jar jenkins.war --httpPort=8000 > system.log 2>&1 &

3、docker安装

# mkdir -p /data/jenkins_data
# chmod -R 777 /data/jenkins_data
# docker run -d --name=jenkins --restart=always -e JENKINS_PASSWORD=admin123 -e JENKINS_USERNAME=admin -e JENKINS_HTTP_PORT_NUMBER=8000 -p 8000:8000 -p 50000:50000 -v /data/jenkins_data:/bitnami/jenkins bitnami/jenkins:2.346.3-debian-11-r7
# docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

三、配置jenkins

1、更改密码

进入主页后点击admin

点击configure按钮

进入之后拉到Password项修改密码,点击save保存

保存后自动重新登陆,输入用户名和更新后的密码进入

2、修改插件源地址

1、直接修改配置文件

cd jenkins_home/updates
sed -i 's/http:\/\/updates.jenkins-ci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && \
sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

2、网页修改

点击Managa Jenkins后点击右面的Plugins项

点击Advanced setting拉到最下面修改Update Site,输入jenkins清华源地址

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

或者安装Localization: Chinese (Simplified)插件后主页右下角会出现Jenkins 中文社区的链接

进入后可以选择更新中心镜像设置

3、安装插件

登录后点击 Manage Jenkins → Plugins 安装需要使用的插件

可以在 Available 可以看到所有的可用插件

可以按需安装以下插件

Git 
Git Parameter 
GitLab 
Pipeline 
List Git Branches Parameter 
Image Tag Parameter 
Active Choices
Localization: Chinese (Simplified)
Ansible
AnsiColor
DingTalk
Docker
Docker Pipeline
Workspace Cleanup

勾选后,点击 Download now and install after restart

之后可以在 Installed Plugins看到已经安装的插件

image-20230702094707773

至此 Jenkins 和 Jenkins 插件的安装就完成了。

四、jenkins数据目录迁移

1、yum安装方式

转移jenkins目录,把默认目录/var/lib/jenkins,更改到其他大目录或者磁盘中。

我的是在centos中安装的,我把默认目录转移到/data中

把/var/lib/jenkins 拷贝到 /data中

因为是在root用户下操作的,所以需要更改目录所属目录

rsync -az /var/lib/jenkins /data/
#更改目录所属用户
chown -R jenkins:jenkins /data/jenkins/

执行下列命令更改jenkins启动命令

# vim /usr/lib/systemd/system/jenkins.service
Environment="JENKINS_HOME=/data/jenkins"
WorkingDirectory=/data/jenkins

修改/etc/sysconfig/jenkins

vim /etc/sysconfig/jenkins
#JENKINS_HOME="/var/lib/jenkins"
JENKINS_HOME="/data/jenkins"

修改/etc/passwd中的jenkins

把其中的Server:/var/lib/jenkins 改成 /data/jenkins

[root@localhost ]# vim /etc/passwd
#其中内容,修改后
jenkins:x:995:993:Jenkins Automation Server:/data/jenkins:/bin/false

保存退出

重启jenkins

# systemctl daemon-reload
# systemctl restart jenkins

2、war包安装

war包安装默认会把jenkins的数据目录安装到/root/.jenkins中,所以需要更改环境变量的方式更改默认目录

# vim /etc/profile
export JENKINS_HOME=/data/jenkins_home
# source  /etc/profile
0

评论区