Jenkins构建任务如何在CentOS上配置
导读:在 CentOS 上配置 Jenkins 构建任务 一 环境准备与安装 安装 Java 11+(推荐 OpenJDK 11 或 OpenJDK 17): sudo yum install -y java-11-openjdk-devel...
在 CentOS 上配置 Jenkins 构建任务
一 环境准备与安装
- 安装 Java 11+(推荐 OpenJDK 11 或 OpenJDK 17):
- sudo yum install -y java-11-openjdk-devel
- 或 sudo yum install -y java-17-openjdk
- 添加 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
- sudo yum install -y jenkins
- 启动并设置开机自启:
- sudo systemctl start jenkins
- sudo systemctl enable jenkins
- 开放防火墙端口(默认 8080):
- sudo firewall-cmd --permanent --add-port=8080/tcp
- sudo firewall-cmd --reload
- 获取初始管理员密码:
- sudo cat /var/lib/jenkins/secrets/initialAdminPassword
- 访问 http://< 服务器IP> :8080 完成初始化(安装推荐插件、创建管理员)。
二 全局工具与插件配置
- 进入 Manage Jenkins >
Global Tool Configuration,配置:
- JDK:取消自动安装,指定路径(如 /usr/lib/jvm/java-11-openjdk 或 /usr/lib/jvm/java-17-openjdk)。
- Git:确保系统已安装(sudo yum install -y git),Jenkins 会自动检测。
- Maven/Gradle:选择自动安装或指定本地路径(如 /opt/maven)。
- 常用插件(按需安装):
- Git plugin、Maven Integration、Pipeline、Blue Ocean、GitHub Integration、SSH Agent、NodeJS(前端项目)。
三 创建构建任务
- 新建任务
- 点击 New Item,选择 Freestyle project 或 Pipeline。
- 源码管理
- 选择 Git,填写仓库 URL 与分支(如 */main),添加凭证(用户名/密码或 SSH 密钥)。
- 构建触发器
- 轮询 SCM:如 **H/5 * * * ***(每 5 分钟检查一次变更)。
- GitHub/GitLab Webhook:需公网可达;GitHub 任务勾选 GitHub hook trigger for GITScm polling。
- 构建步骤
- Freestyle:
- 构建环境:选择已配置的 JDK。
- 构建:Add build step 选择 Invoke top-level Maven targets,目标如 clean package;或执行 Shell(如 mvn/ npm)。
- Pipeline(推荐):在项目根目录放置 Jenkinsfile,示例:
- pipeline { agent any stages { stage(‘Build’) { steps { sh ‘mvn clean package’ } } stage(‘Test’) { steps { sh ‘mvn test’ } } stage(‘Deploy’) { steps { sh ‘scp target/*.jar user@server:/path’ } } } }
- Freestyle:
- 构建后操作
- 归档构件(如 target/*.jar)、发布测试报告、或 Publish Over SSH 将产物传到远程服务器并重启服务。
四 自动化触发与安全加固
- 自动化触发
- GitHub:在仓库 Settings > Webhooks 添加 Payload URL:http:///github-webhook/;Jenkins 任务勾选 GitHub hook trigger for GITScm polling。
- GitLab:使用 GitLab CI/CD 或 Webhook(需 CSRF 保护与可访问性)。
- 安全与权限
- 进入 Manage Jenkins > Configure Global Security,启用 Matrix-based security 做细粒度授权;避免使用默认管理员执行日常任务。
- 建议启用 HTTPS(反向代理或 Ingress 配置 TLS),并定期备份 JENKINS_HOME(默认 /var/lib/jenkins)。
五 常见问题与排障
- 端口与访问
- 默认端口 8080;如需修改,编辑 /usr/lib/systemd/system/jenkins.service 中的 Environment=“JENKINS_PORT=8087”,然后执行:
- sudo systemctl daemon-reload
- sudo systemctl restart jenkins
- 确保云厂商安全组与 firewalld 已放行对应端口。
- 默认端口 8080;如需修改,编辑 /usr/lib/systemd/system/jenkins.service 中的 Environment=“JENKINS_PORT=8087”,然后执行:
- 构建权限与工具链
- 若需执行 Docker 命令:将 jenkins 用户加入 docker 组(sudo usermod -aG docker jenkins),重启 Jenkins;以 jenkins 用户测试 docker ps。
- 前端项目在 系统管理 > 全局工具配置 添加 Node.js(如 16.x/18.x),并在任务中勾选 提供 Node & npm bin/folder 到 PATH。
- 构建超时与稳定性
- 任务配置中适当增加 超时时间;必要时在构建环境准备缓存(如 npm/yarn/maven 本地仓库)提升稳定性。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Jenkins构建任务如何在CentOS上配置
本文地址: https://pptw.com/jishu/785992.html
