在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流程。


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

相关推荐
箓维15 分钟前
线程的优缺点,与进程的关联和差异
java·服务器·笔记
不会就选b25 分钟前
Linux之http会话
服务器·网络协议·http
其实防守也摸鱼25 分钟前
SQL注入实验笔记
android·运维·数据库·安全·oracle·自动化
江屿风26 分钟前
【Linux系统】【从【收尾】缓冲区到【新开】磁盘块:一节课打通文件系统底层原理】流食般投喂
linux·运维·服务器·人工智能·笔记
Pointer Pursuit29 分钟前
编辑器Vim
linux·编辑器·vim
_upupup36 分钟前
Linux中的权限解析
linux·服务器
河北小博博36 分钟前
阿里云 ChatOps Agent 让非标准化环境可修复:内核漏洞换盘后的容器恢复
阿里云·云计算
曹牧37 分钟前
Spring MVC : Controller 层URL划分
java·运维·服务器·前端
路漫漫其修远兮sjw37 分钟前
Linux 运维知识点笔记(中级)
linux·运维·笔记
石一峰69941 分钟前
Linux INPUT 与 I2C 子系统关联
linux·运维·计算机外设