[笔记] Jenkins 安装与配置全攻略:Ubuntu 从零开始搭建持续集成环境

随着 DevOps 流程的普及,持续集成(CI)和持续交付(CD)已成为现代软件开发中不可或缺的一部分。Jenkins 作为一款开源的自动化服务器,广泛应用于 CI/CD 管道的构建与管理。它不仅支持多种编程语言和工具链,还拥有丰富的插件生态系统,能够满足不同团队的需求。对于初学者来说,Jenkins 的安装和配置可能会显得有些复杂,尤其是当您需要在同一台服务器上同时运行多个服务时(如 GitLab 和 Jenkins)。本文将为您提供一份详细的 Jenkins 安装与配置指南,帮助您快速搭建一个稳定可靠的持续集成环境。

官网 : Jenkins


一. 系统配置

1. 最低推荐配置:

  • 256MB可用内存
  • 1GB可用磁盘空间(作为一个Docker容器运行jenkins的话推荐10GB)

2. 为小团队推荐的硬件配置:

  • 1GB+可用内存
  • 50 GB+ 可用磁盘空间

3. 软件配置:

  • Java 8---无论是Java运行时环境(JRE)还是Java开发工具包(JDK)都可以。

二. 安装java

Jenkins是一个Java应用程序,需要在系统上安装Java 8或更高版本。我们将安装OpenJDK 17, Java平台的开源实现。

bash 复制代码
sudo apt update
sudo apt install openjdk-17-jdk

检查Java版本:

bash 复制代码
java -version

三. 安装 Jenkins

在 Ubuntu 上安装 Jenkins 相对简单。我们将启用 Jenkins APT 存储库,导入存储库 GPG 密钥,并安装 Jenkins 包。

1. wget 命令导入 Jenkins 存储库的 GPG 键:

bash 复制代码
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -

2. 将 Jenkins 存储库添加到系统中

bash 复制代码
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

3. apt 包列表并安装最新版本的 Jenkins :

bash 复制代码
sudo apt-get update
sudo apt-get install jenkins

4.报错 (没有报错则忽略)

bash 复制代码
W: GPG 错误:https://pkg.jenkins.io/debian-stable binary/ Release: 由于没有公钥,无法验证下列签名:NO_PUBKEY 9B7D32F2D50582E6
E: 仓库 "http://pkg.jenkins.io/debian-stable binary/ Release" 没有数字签名。

解决方法

  • 导入密钥:
bash 复制代码
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9B7D32F2D50582E6
  • 再次运行 3 :
bash 复制代码
sudo apt-get update
sudo apt-get install jenkins

5. 验证是否安装成功

bash 复制代码
## 查看状态
systemctl status jenkins

## 查看进程信息
ps -ef |grep jenkins

6. 调整防火墙

如果你在一个被防火墙保护的远程Ubuntu服务器上安装Jenkins,你需要打开端口8080。

bash 复制代码
# 查询开启的端口
sudo ufw status

# 打开8080端口
sudo ufw allow 8080

7. 更换端口(可跳过)

因为我是 gitlab 和 Jenkins 在同一台服务器,所以 8080 端口被 gitlab 占用了。

a. 编辑 /etc/default/jenkins 或 /etc/sysconfig/jenkins 文件(取决于你的系统):

bash 复制代码
sudo nano /etc/default/jenkins

b. 在 jenkins 加载目录中修改端口

bash 复制代码
sudo vim /usr/lib/systemd/system/jenkins.service

c. 打开设置的端口

bash 复制代码
sudo ufw allow 8081

d. 重启 Jenkins

bash 复制代码
## 重新加载配置文件
sudo systemctl daemon-reload

## 重启 Jenkins
sudo systemctl restart jenkins

四. 设置 Jenkins

1. 解锁 Jenkins

完成Jenkins安装,打开浏览器,输入域或IP地址,然后输入默认端口8080,

例如:http://jenkins.xxx.com:8080

将显示如下页面,提示您输入安装过程中创建的管理员密码:

使用 cat 在终端上显示密码 :

bash 复制代码
sudo cat /var/lib/jenkins/secrets/initialAdminPassword

从终端复制密码,粘贴到"管理员密码"域中,点击"继续"。

2. 安装插件

点击"安装推荐的插件"框,安装过程将立即开始。等待推荐插件安装完成(安装失败,点击重试继续安装)

3. 创建管理员账户

4. Jenkins实例设置URL(自动生成,下一步即可)

5. 完成



相关推荐
寻星探路3 分钟前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
曹牧2 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
wdfk_prog3 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
ouliten3 小时前
cuda编程笔记(36)-- 应用Tensor Core加速矩阵乘法
笔记·cuda
爬山算法3 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
七夜zippoe3 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥3 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
kfyty7253 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎3 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄3 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea