java_demo/JENKINS_SETUP.md
wangtianqi abdb259a9f 更新Jenkins配置支持SSH用户名密码认证 + 添加详细的Jenkins面板操作指南
- 修改Jenkinsfile支持SSH用户名密码认证方式
- 添加JENKINS_PANEL_GUIDE.md详细操作指南
- 添加QUICK_START.md快速配置清单
- 添加服务器配置脚本支持用户名密码认证
- 更新配置文档和部署说明
2025-06-23 18:39:00 +08:00

5.2 KiB
Raw Blame History

Jenkins CI/CD 配置指南

🎯 项目信息

📋 Jenkins配置步骤

1. 创建Pipeline项目

  1. 登录Jenkins新建任务
  2. 输入任务名称: java-demo-pipeline
  3. 选择Pipeline确定

2. 配置项目

基本配置

Pipeline配置

3. 必需的Jenkins插件

确保以下插件已安装:

# 必需插件列表
- Maven Integration Plugin
- JaCoCo Plugin  
- SonarQube Scanner Plugin
- Docker Pipeline Plugin
- SSH Agent Plugin
- Publish Over SSH Plugin
- Blue Ocean Plugin (推荐)

4. 工具配置

4.1 JDK配置

  • 管理Jenkins工具配置JDK
  • Name: JDK-17
  • JAVA_HOME: /usr/lib/jvm/java-17-openjdk

4.2 Maven配置

  • 管理Jenkins工具配置Maven
  • Name: Maven-3.9.3
  • MAVEN_HOME: /opt/maven

4.3 SonarQube配置

  • 管理Jenkins系统配置SonarQube servers
  • Name: SonarQube
  • Server URL: http://116.62.163.84:15010
  • Server authentication token: squ_7e4217cabd0faae6f3b8ee359b3b8e2ac52eb69a

5. 凭据配置

5.1 Git凭据

  • 管理Jenkins凭据管理添加凭据
  • 类型: Username with password
  • ID: git-credentials
  • 用户名: wangtianqi
  • 密码: [您的Git密码]

5.2 服务器SSH凭据用户名密码方式

  • 管理Jenkins凭据管理添加凭据
  • 类型: Username with password
  • ID: deploy-server-ssh
  • 用户名: root (或您的服务器用户名)
  • 密码: [服务器用户密码]
  • 描述: Deploy Server SSH Credentials

注意: 使用用户名密码方式需要在Jenkins服务器上安装 sshpass 工具。大多数现代Linux发行版都可以通过包管理器安装。

6. 环境要求

6.1 Jenkins服务器环境

# 必需软件
- JDK 17
- Maven 3.9+
- Docker
- Git
- curl

6.2 目标服务器环境 (116.62.163.84)

# 必需软件
- Docker
- Docker Compose (可选)

# 防火墙配置
- 开放端口 80 (生产环境)
- 开放端口 8080 (测试环境)

7. Pipeline流程

graph TD
    A[代码检出] --> B[环境检查]
    B --> C[编译]
    C --> D[单元测试]
    D --> E[代码质量扫描]
    E --> F[打包]
    F --> G[构建Docker镜像]
    G --> H{分支判断}
    H -->|develop/feature| I[部署到测试环境]
    H -->|main/master| J[部署到生产环境]
    I --> K[健康检查]
    J --> K
    K --> L[完成]

8. 部署说明

8.1 测试环境部署

  • 触发条件: develop 或 feature/* 分支
  • 端口: 8080
  • 容器名: jenkins-demo-test

8.2 生产环境部署

  • 触发条件: main 或 master 分支
  • 端口: 80
  • 容器名: jenkins-demo-prod
  • 需要手动确认

9. 监控地址

部署完成后的访问地址:

# 生产环境
http://116.62.163.84/api/health           # 健康检查
http://116.62.163.84/api/users            # 用户管理API
http://116.62.163.84/api/info             # 应用信息

# 测试环境  
http://116.62.163.84:8080/api/health      # 健康检查
http://116.62.163.84:8080/api/users       # 用户管理API
http://116.62.163.84:8080/api/info        # 应用信息

10. 故障排除

10.1 常见问题

构建失败

# 检查Jenkins日志
cat /var/log/jenkins/jenkins.log

# 检查Maven配置
mvn -version

# 检查JDK配置
java -version

部署失败

# 检查目标服务器Docker状态
docker ps -a
docker logs jenkins-demo-prod

# 检查端口占用
netstat -tlnp | grep :80

SonarQube扫描失败

# 检查SonarQube服务状态
curl http://116.62.163.84:15010/api/system/status

# 验证Token
curl -u squ_7e4217cabd0faae6f3b8ee359b3b8e2ac52eb69a: http://116.62.163.84:15010/api/authentication/validate

11. 构建触发器

可以配置以下触发器:

  • 轮询SCM: H/5 * * * * (每5分钟检查一次)
  • Webhook: 在Git仓库配置Webhook
  • 定时构建: H 2 * * * (每天凌晨2点)

12. 通知配置

可以配置以下通知方式:

  • 邮件通知: 构建结果发送邮件
  • 钉钉通知: 集成钉钉机器人
  • 企业微信: 集成企业微信机器人

🎉 完成!

配置完成后您的团队就可以享受完整的CI/CD流程了

  1. 代码提交自动构建自动测试代码扫描自动部署
  2. 质量保证: 单元测试覆盖率、代码质量检查
  3. 快速反馈: 构建失败立即通知,快速定位问题
  4. 环境一致性: Docker容器化部署确保环境一致性