温馨提示×

centos中jenkins怎配置

小樊
39
2026-09-09 07:54:50
栏目: 智能运维

CentOS 上配置 Jenkins,通常分为「安装 → 初始化 → 基础配置 → 构建环境配置」几个阶段。下面给你一份实用型操作指南(以 CentOS 7/8 为例,Jenkins 2.x)。


一、安装 Jenkins(CentOS)

1. 安装 Java(Jenkins 依赖)

# CentOS 7/8
yum install -y java-11-openjdk-devel
# 或
yum install -y java-1.8.0-openjdk

验证:

java -version

2. 添加 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

3. 安装 Jenkins

yum install -y jenkins

4. 启动 Jenkins

systemctl enable jenkins
systemctl start jenkins
systemctl status jenkins

默认端口:8080


二、初始化 Jenkins

1. 浏览器访问

http://服务器IP:8080

2. 获取管理员密码

cat /var/lib/jenkins/secrets/initialAdminPassword

复制粘贴到页面中。


3. 安装推荐插件

  • 选择 Install suggested plugins
  • 等待安装完成

4. 创建管理员用户

按提示设置:

  • 用户名
  • 密码
  • 邮箱

三、Jenkins 基础配置

1. 全局工具配置

路径:

Manage Jenkins → Global Tool Configuration

常见需要配置:

  • JDK
  • Git
  • Maven / Gradle
  • NodeJS(前端项目)

示例(Git):

which git
# /usr/bin/git

2. 配置 Git

yum install -y git

Jenkins 中添加:

  • Name: git
  • Path: /usr/bin/git

3. 配置 Maven

yum install -y maven
mvn -version

Jenkins 中:

  • Name: maven
  • MAVEN_HOME: /usr/share/maven

四、权限与防火墙

1. 开放 8080 端口

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

2. Jenkins 用户权限(重要)

Jenkins 默认以 jenkins 用户运行:

cat /etc/passwd | grep jenkins

如果构建需要 docker / kubectl:

usermod -aG docker jenkins
systemctl restart jenkins

五、创建第一个任务(示例)

  1. New Item → Freestyle project
  2. 源码管理:
    • Git
    • Repository URL
  3. Build 步骤:
    • Execute shell
    mvn clean package
    
  4. 保存并 Build Now

六、常见问题

1. Jenkins 启动失败

查看日志:

journalctl -u jenkins

常见原因:

  • Java 版本不对
  • 端口被占用

2. 插件下载慢

更换镜像:

Manage Jenkins → Plugin Manager → Advanced

Update Site:

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

3. 修改 Jenkins 端口

编辑:

vi /etc/sysconfig/jenkins

修改:

JENKINS_PORT="8081"

重启:

systemctl restart jenkins

如果你愿意,可以告诉我:

  • ✅ CentOS 版本
  • ✅ Jenkins 用途(Java / 前端 / Docker / K8s)
  • ✅ 是否要 自动化部署

我可以直接给你 针对性配置方案或 Jenkinsfile 示例

0