# rnd-deploy **Repository Path**: gaiweiwei/rnd-deploy ## Basic Information - **Project Name**: rnd-deploy - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-21 - **Last Updated**: 2025-07-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 自动部署系统 基于SpringBoot + Maven + JSch的自动化部署工具,支持可视化界面一键部署SpringBoot应用到腾讯云CVM服务器。 ## 功能特点 - ✅ **一键部署**: 自动Maven打包、上传、部署 - ✅ **可视化界面**: Web界面操作简单直观 - ✅ **状态监控**: 实时查看Tomcat运行状态 - ✅ **自动备份**: 部署前自动备份旧版本 - ✅ **启动检查**: 自动检查Tomcat启动状态 - ✅ **多服务器**: 支持配置多台服务器 ## 技术栈 - **后端**: SpringBoot 2.6.13 + JDK 1.8 - **前端**: Bootstrap 5 + JavaScript - **传输**: JSch (SSH/SFTP) - **构建**: Maven ## 快速开始 ### 1. 配置服务器信息 编辑 `src/main/resources/application.yml`: ```yaml deploy: maven: home: /usr/local/apache-maven-3.8.6 # Maven安装路径 settings: ~/.m2/settings.xml # Maven配置文件 servers: - name: "腾讯云CVM-生产" host: "123.123.123.123" # 服务器IP port: 22 # SSH端口 username: "root" # SSH用户名 password: "your-password" # SSH密码 tomcat: home: "/usr/local/tomcat" # Tomcat安装目录 webapps: "/usr/local/tomcat/webapps" # 部署目录 sharedLib: "/usr/local/tomcat/shared/lib" # 共享库目录 logFile: "/usr/local/tomcat/logs/catalina.out" # 日志文件 backup: enabled: true # 是否启用备份 path: "/backup/war" # 备份目录 keepDays: 7 # 备份保留天数 ``` ### 2. 启动系统 ```bash # 克隆项目 git clone <项目地址> cd rnd-deploy # 编译打包 mvn clean package # 启动应用 java -jar target/rnd-deploy-1.0.0.jar # 或使用Maven启动 mvn spring-boot:run ``` ### 3. 访问界面 浏览器访问: http://localhost:8080 ## 使用步骤 1. **选择项目**: 点击文件夹图标选择SpringBoot项目根目录 2. **选择服务器**: 从下拉列表选择目标服务器 3. **一键部署**: 点击"开始部署"按钮 4. **查看状态**: 实时监控部署进度和服务器状态 ## 部署流程 ``` 1. 用户点击部署 2. 系统执行Maven clean package 3. 查找生成的WAR文件 4. 连接到目标服务器 5. 备份现有WAR文件 6. 上传新WAR文件 7. 检查是否需要重启Tomcat 8. 检查Tomcat启动状态 9. 返回部署结果 ``` ## 目录结构 ``` src/ ├── main/ │ ├── java/com/deploy/ │ │ ├── AutoDeployApplication.java # 启动类 │ │ ├── config/ │ │ │ └── DeployConfig.java # 配置类 │ │ ├── controller/ │ │ │ └── DeployController.java # REST API │ │ ├── model/ │ │ │ ├── DeployRequest.java # 请求模型 │ │ │ └── DeployResponse.java # 响应模型 │ │ └── service/ │ │ └── DeployService.java # 部署服务 │ └── resources/ │ ├── application.yml # 配置文件 │ └── static/ │ ├── index.html # 前端页面 │ └── app.js # 前端脚本 ``` ## 常见问题 ### 1. Maven路径配置 如果Maven不在默认路径,需要修改配置: ```yaml deploy: maven: home: /opt/maven # 根据实际路径修改 ``` ### 2. SSH连接问题 - 确保服务器开启SSH服务 - 检查防火墙是否放行22端口 - 验证用户名密码是否正确 ### 3. Tomcat路径配置 根据实际安装路径调整: ```yaml tomcat: home: /opt/tomcat webapps: /opt/tomcat/webapps logFile: /opt/tomcat/logs/catalina.out ``` ### 4. 权限问题 确保用户有权限: - 读取项目目录 - 执行Maven命令 - 写入Tomcat目录 ## 扩展功能 ### 1. 多环境部署 可以在配置中添加多个服务器配置: ```yaml servers: - name: "开发环境" host: "dev.example.com" # ... - name: "测试环境" host: "test.example.com" # ... - name: "生产环境" host: "prod.example.com" # ... ``` ### 2. 自定义Maven参数 可以扩展支持自定义Maven参数: ```yaml maven: additionalArgs: ["-Dspring.profiles.active=prod", "-DskipTests"] ``` ## 技术支持 如有问题,请检查: 1. 应用日志: `logs/deploy-system.log` 2. 服务器SSH连接 3. Maven和Tomcat路径配置 4. 文件权限设置 ## 许可证 MIT License