当前位置: 首页 > news >正文

linux下jenkins部署安装使用

Jenkins 是什么?

Jenkins是一款开源 CI&CD 软件,是基于Java开发的一种持续集成工具,用于自动化各种任务,包括构建、测试和部署软件。

Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。
Jenkins应用广泛,大多数互联网公司都采用Jenkins配合GitLab、Docker、K8s作为实现DevOps的核心工具。
Jenkins最强大的就在于插件,Jenkins官方提供了大量的插件库,来自动化CI/CD过程中的各种琐碎功能。

Jenkins最主要的工作就是将GitLab上可以构建的工程代码拉取并且进行构建,再根据流程可以选择发
布到测试环境或是生产环境。
一般是GitLab上的代码经过大量的测试后,确定发行版本,再发布到生产环境。
CI/CD可以理解为:
CI过程即是通过Jenkins将代码拉取、构建、制作镜像交给测试人员测试。
持续集成:让软件代码可以持续的集成到主干上,并自动构建和测试。
CD过程即是通过Jenkins将打好标签的发行版本代码拉取、构建、制作镜像交给运维人员部署。
持续交付:让经过持续集成的代码可以进行手动部署。
持续部署:让可以持续交付的代码随时随地的自动化部署。

官网:https://www.jenkins.io

中文文档:https://www.jenkins.io/zh/

安装包:http://mirrors.jenkins.io/war-stable/latest

基础环境要求

运行 Jenkins 需要以下 Java 版本,该要求同样适用于 Jenkins 系统的所有组件,包括 Jenkins 控制器、所有类型的代理、CLI 客户端和其他组件。

Supported Java versions

Long term support (LTS) release

Weekly release

Java 11, Java 17, or Java 21

2.426.1 (November 2023)

2.419 (August 2023)

Java 11 or Java 17

2.361.1 (September 2022)

2.357 (June 2022)

Java 8, Java 11, or Java 17

2.346.1 (June 2022)

2.340 (March 2022)

Java 8 or Java 11

2.164.1 (March 2019)

2.164 (February 2019)

注意:如果安装不受支持的 Java 版本,则 Jenkins 控制器将无法运行。

 docker方式安装

安装Docker和Docker Compose
#安装docker
yum install docker#安装docker-compose
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose# 添加执行权限
chmod +x /usr/local/bin/docker-compose# 验证安装
docker-compose --version使用 pip 安装docker-compose(适合无法直接访问 GitHub 的环境)
# 安装pip(如未安装)
sudo apt-get install python3-pip# 使用pip安装
sudo pip3 install docker-compose# 验证安装
docker-compose --version

 

拉取Jenkins镜像
docker pull jenkins/jenkins
编写docker-compose.yml

vim docker-compose.yml

version: "3.1"
services:
jenkins:
image: jenkins/jenkins
container_name: jenkins
ports:
- 8080:8080
- 50000:50000
volumes:
- ./data/:/var/jenkins_home/#给data目录添加权限
chmod -R a+w data/
启动jenkins容器

在docker-compose.yml同级目录下执行

docker-compose up -d
# 或只启动特定服务
docker-compose up -d jenkins
# 或只启动改yml文件下的容器
docker-compose -f docker-compose.yml up -d
查看运行的服务
docker-compose ps
查看日志
docker-compose logs <service_name>
docker-compose logs jenkins
停止服务

要停止所有服务,可以使用:

docker-compose down

这将会停止并移除所有容器、网络、卷、镜像等。如果你只想停止容器而不移除它们,可以使用:

docker-compose stop

重新启动Jenkins容器后,由于Jenkins需要下载大量内容,但是由于默认下载地址下载速度较慢,
需要重新设置下载地址为国内镜像站 

修改数据卷中的hudson.model.UpdateCenter.xml文件

vim hudson.model.UpdateCenter.xml
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>https://updates.jenkins.io/update-center.json</url>
</site>
</sites>
# 将下载地址替换为http://mirror.esuni.jp/jenkins/updates/update-center.json
<?xml version='1.1' encoding='UTF-8'?>
<sites>
<site>
<id>default</id>
<url>http://mirror.esuni.jp/jenkins/updates/update-center.json</url>
</site>
</sites>
# 清华大学的插件源也可以
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

查看密码登录Jenkins,并登录下载插件

docker exec -it jenkins cat /var/jenkins_home/secrets/initialAdminPassword

 

war方式安装

下载jenkins
yum install -y java-11
mkdir -p /opt/jenkins
cd /opt/jenkins
wget https://mirrors.jenkins.io/war-stable/2.426.1/jenkins.war

启动jenkins
nohup java -jar jenkins.war --httpPort=8080 > jenkins.log &

访问Jenkins并登录

打开浏览器访问jenkins链接http://localhost:8080。第一次访问新的Jenkins实例时,系统会要求使用/root/.jenkins/secrets/initialAdminPassword文件中自动生成的密码对其进行解锁。

cat /root/.jenkins/secrets/initialAdminPassword

自定义jenkins插件

解锁 Jenkins之后,在 Customize Jenkins 页面内, 可以安装任何数量的有用插件作为初始步骤的一部分。

两个选项可以设置:

  • 安装建议的插件 - 安装推荐的一组插件,这些插件基于最常见的用例.

  • 选择要安装的插件 - 选择安装的插件集。当第一次访问插件选择页面时,默认选择建议的插件。

说明:如果您不确定需要哪些插件,请选择 安装建议的插件 。 您可以通过Jenkins中的Manage Jenkins> Manage Plugins页面在稍后的时间点安装(或删除)其他Jenkins插件 

创建第一个管理员用户

最后,在安装插件之后,Jenkins要求您创建第一个管理员用户。出现“ 创建第一个管理员用户 ”页面时, 请在各个字段中指定管理员用户的详细信息,然后单击 保存完成 。也可以直接使用admin用户做登录。

从这时起,Jenkins用户界面只能通过提供有效的用户名和密码凭证来访问。

安装完成

完成上述初始化操作后,可以点击 开始使用 Jenkins 直接登录进入 Jenkins,这就算安装完成了。

Jenkins入门配置

由于Jenkins需要从Git拉取代码、需要本地构建、甚至需要直接发布自定义镜像到Docker仓库,所以Jenkins需要配置大量内容。

构建任务

准备好GitLab仓库中的项目,并且通过Jenkins配置项目的实现当前项目的DevOps基本流程。
GitLab查看项目构建Maven工程发布到GitLab(Gitee、Github均可)

新建任务
Jenkins点击首页左侧导航新建任务

选择自由风格构建任务

配置源码拉取地址

Jenkins需要将Git上存放的源码存储到Jenkins服务所在磁盘的本地,配置任务源码拉取的地址

Jenkins立即构建

查看构建工程的日志

点击build history的任务条即可,可以看到源码已经拉取带Jenkins本地,可以根据第三行日志信息,查看Jenkins本地拉取到的源码。

相关文章:

  • 【图像大模型】Stable Video Diffusion:基于时空扩散模型的视频生成技术深度解析
  • 【HTML-2】HTML 标题标签:构建网页结构的基础
  • 设计模式之备忘录模式
  • 如何使用通义灵码玩转Python - AI编程助手提升效率
  • windows安装WS,实测可行
  • Prompt Tuning:轻量级大模型微调全攻略
  • Python | 库存覆盖天数【待续】
  • 理解阿里云的MQTT
  • Python类的力量:第六篇:设计模式——Python面向对象编程的“架构蓝图”
  • 面试突击:消息中间件之RabbitMQ
  • 《医院运营管理典型应用数据资源建设指南2025》全面分析
  • DeepSeek+PiscTrace+YOLO:迅速实现Mask掩码抠图
  • 【node.js】核心进阶
  • 在 Git 中添加子模块(submodule)的详细步骤
  • C++学习:六个月从基础到就业——多线程编程:互斥量与锁
  • Awesome ChatGPT Prompts:释放AI对话潜力的开源利器
  • Apache Apisix配置ip-restriction插件以限制IP地址访问
  • 【数据结构】
  • python-leetcode 68.有效的括号
  • 在Java项目中集成Deepseek大语言模型实践指南
  • 百年前淮北乡村的风俗画卷——读郑重 《九十自述》
  • 人民日报:莫让“假自杀”淹没“真求助”
  • F4方程式上海站引擎轰鸣,见证中国赛车运动不断成长
  • 昆明一小区火灾调查报告:七旬夫妇身亡,生前拾荒存放大量可燃物
  • 两名游客刻划八达岭长城,被拘5日罚200元
  • 著名文学评论家、原伊犁师范学院院长吴孝成逝世