温馨提示×

CentOS如何配置Jenkins服务

小樊
36
2026-07-21 01:34:26
栏目: 智能运维

下面以 CentOS 7/8(通用做法) 为例,讲解 Jenkins 的安装与服务配置,适合大多数场景。


一、准备环境

1. 安装 Java(Jenkins 依赖)

Jenkins 需要 Java 8 或 Java 11+

# 查看是否已安装
java -version

# 安装 OpenJDK 11(推荐)
sudo yum install -y java-11-openjdk-devel

二、安装 Jenkins

方法一:官方仓库安装(推荐)

1. 添加 Jenkins 官方仓库

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

2. 安装 Jenkins

sudo yum install -y jenkins

方法二:使用 RPM 包(离线环境)

wget https://pkg.jenkins.io/redhat-stable/jenkins-lts.rpm
sudo rpm -ivh jenkins-lts.rpm

三、配置 Jenkins 服务

1. Jenkins 服务文件位置

/usr/lib/systemd/system/jenkins.service

2. 常见配置项

编辑配置:

sudo vim /usr/lib/systemd/system/jenkins.service

常见需要修改的内容:

配置项 说明
User=jenkins 运行用户
JENKINS_PORT=8080 Jenkins 端口
JENKINS_HOME=/var/lib/jenkins Jenkins 主目录
JAVA_OPTS JVM 参数

示例:

Environment="JENKINS_PORT=8080"
Environment="JAVA_OPTS=-Xms512m -Xmx1024m"

3. 重载 systemd

sudo systemctl daemon-reload

四、启动并设置开机自启

sudo systemctl start jenkins
sudo systemctl enable jenkins

查看状态:

sudo systemctl status jenkins

五、防火墙配置(重要)

1. 开放端口

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

2. 验证

ss -lntp | grep 8080

六、初始化 Jenkins

1. 获取初始密码

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

2. 访问 Jenkins

浏览器访问:

http://服务器IP:8080

七、常用目录说明

目录 说明
/var/lib/jenkins Jenkins 主目录
/var/log/jenkins/jenkins.log 日志文件
/etc/sysconfig/jenkins CentOS 7 老版本配置(可选)
/usr/lib/systemd/system/jenkins.service systemd 服务配置

八、常见问题

1. Jenkins 启动失败

查看日志:

sudo journalctl -u jenkins -xe

常见原因:

  • Java 未安装
  • 端口被占用
  • 权限不足

2. 修改端口

# 修改服务文件
sudo vim /usr/lib/systemd/system/jenkins.service
sudo systemctl daemon-reload
sudo systemctl restart jenkins

3. Jenkins 占用内存大

Environment="JAVA_OPTS=-Xms256m -Xmx512m"

九、CentOS 8 特别说明

CentOS 8 已停止维护,建议:

  • 使用 OpenJDK 11
  • 或用 Docker 方式运行 Jenkins

如果你需要:

  • Jenkins + Git + Maven 自动化构建
  • Jenkins Slave / Agent 配置
  • Jenkins 与 Nginx 反向代理
  • Docker 方式安装 Jenkins

可以告诉我你的具体使用场景。

0