在Linux上部署Jenkins的详细指南

引言

在当今快速迭代的软件开发环境中,持续集成和持续交付(CI/CD)变得越来越重要。Jenkins作为一个开源自动化服务器,能够帮助开发者更高效地进行代码集成、测试和部署。本文将详细介绍如何在Linux系统上安装和配置Jenkins。

准备工作

更新系统

无论你使用的是基于Debian的系统还是RHEL系列,首先确保系统更新至最新状态:

bash 复制代码
sudo apt update && sudo apt upgrade -y  # Debian/Ubuntu
# 或者
sudo yum update -y  # CentOS/RHEL

安装Java

Jenkins依赖于Java环境,因此我们需要先安装OpenJDK 11:

对于Debian/Ubuntu:

bash 复制代码
sudo apt install openjdk-11-jdk -y

对于CentOS/RHEL:

bash 复制代码
sudo yum install java-11-openjdk-devel -y

验证安装:

bash 复制代码
java -version

安装Jenkins

添加Jenkins仓库并安装

Debian/Ubuntu:
bash 复制代码
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'
sudo apt update
sudo apt install jenkins -y
CentOS/RHEL:
bash 复制代码
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
sudo yum install jenkins -y

启动并启用Jenkins服务

安装完成后,启动Jenkins并设置为开机自启:

bash 复制代码
sudo systemctl start jenkins
sudo systemctl enable jenkins

配置防火墙规则(可选)

如果你的服务器有防火墙,记得开放8080端口以便访问Jenkins界面:

UFW (Ubuntu):
bash 复制代码
sudo ufw allow 8080
sudo ufw reload
Firewalld (CentOS):
bash 复制代码
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
sudo firewall-cmd --reload

访问Jenkins

现在可以通过浏览器访问http://<你的服务器IP>:8080来进入Jenkins初始化页面。按照提示输入初始管理员密码(位于/var/lib/jenkins/secrets/initialAdminPassword),然后根据向导完成安装。

结论

通过以上步骤,我们已经成功在Linux服务器上部署了Jenkins。接下来可以根据项目需求进一步配置Jenkins,比如安装插件、创建任务等。希望这篇指南能帮助你顺利开启Jenkins之旅,实现高效的CI/CD流程。


注意: 根据实际情况调整命令中的细节,如操作系统版本、特定需求等。希望这篇文章对你有所帮助!

相关推荐
wqqqianqian32 分钟前
国产linux系统(银河麒麟,统信uos)使用 PageOffice自定义Word模版中的数据区域
linux·word·自定义·pageoffice·数据区域
小疆智控39 分钟前
数字化工厂升级引擎:Modbus TCP转Profinet网关助力打造柔性生产系统
服务器·网络·tcp/ip
南棱笑笑生44 分钟前
20250512给NanoPi NEO core开发板在Ubuntu core20.04系统更新boot.img
linux·运维·ubuntu
XMYX-01 小时前
Linux du 命令终极指南:从基础到精通
linux·服务器
小锋学长生活大爆炸1 小时前
【教程】Docker更换存储位置
运维·docker·容器
DourPanda1 小时前
polarctf-web-[rce1]
linux·网络协议·网络安全
purrrew1 小时前
【Java ee初阶】IP协议
服务器·网络协议·tcp/ip
一叶屋檐1 小时前
Neo4j 图书馆借阅系统知识图谱设计
服务器·数据库·cypher
愚润求学1 小时前
【Linux】动静态库链接原理
linux·运维·服务器·开发语言·笔记
gnufre2 小时前
Kubernetes 1.28 无 Docker 运行时环境下的容器化构建实践:Kaniko + Jenkins 全链路详解
kubernetes·jenkins·kaniko