# 我的工具箱-后端 **Repository Path**: LOVE0612/tools ## Basic Information - **Project Name**: 我的工具箱-后端 - **Description**: 自主研发、自己使用的工具箱。 欢迎来到我的博客:https://www.cnblogs.com/LOVE0612 欢迎来到我的慕课:https://www.imooc.com/u/5135129/courses?sort=publish - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2022-06-26 - **Last Updated**: 2026-03-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 1. 项目介绍 一开始,我是在学习SpringCloud生态,为了保留学习成果便有了这么一份代码。后来在工作中有了一个对比数据库的需求(不考虑达梦的话,应该会有更好的轮子),然后就把这份代码改成了我的工具箱。 对,我是个后端程序员(大龄)。技术老旧,学习动力不强 # 2. 技术栈 | 层级 | 技术 | 版本 | |-----|------|------| | 中间件 | MySQL | 8.4.2 | | 中间件 | Redis | 3.2.12 | | 中间件 | RabbitMQ | 3.9 | | 后端 | JDK | 1.8 | | 后端 | Spring Boot | 2.3.9.RELEASE | | 后端 | Spring Cloud | Hoxton.SR10 | | 部署 | Docker / Docker Compose | - | # 3. 功能列表 1. 基础功能:用户、角色、权限、消息、站内信、脚本仓库、文件仓库 2. 数据管理:数据源、数据代理、数据项目、备份计划、备份任务、恢复任务、对比计划、对比任务 3. 容器管理:宿主机、镜像仓库、镜像、容器、网络 待填的坑:不胜枚举... # 4. 目录结构 ``` ToolBox/ ├── common/ # 公共模块 │ ├── manager/ # 管理服务 │ ├── config-center/ # Spring Cloud Config 配置中心,从 ToolBoxConfig 提供配置 │ ├── service-center/ # Eureka 服务注册与发现中心 │ ├── gateway-center/ # Spring Cloud Gateway 网关 + WebSocket + 文件上传下载代理 │ └── admin-center/ # Spring Boot Admin 监控,目前已经不在使用,代码暂时保留 │ └── service/ # 业务服务 ├── base-service/ # 基础服务(用户、角色、权限、消息) ├── data-service/ # 数据管理服务(数据源、备份、恢复、对比) ├── docker-service/ # Docker 容器编排服务,目前感觉意义不大,代码暂时保留 ├── automation-service/ # 自动化任务服务(SSH、任务模板) ├── cloud-service/ # 云服务管理(VMware vCenter 集成) ├── cloud-service-vcenter/ # vCenter SDK 依赖 ├── cloud-service-dependency/ # 云服务依赖 └── common-service/ # 通用基础服务 ``` # 5. 服务依赖 ``` 启动顺序: MySQL/Redis/RabbitMQ → config-center → service-center → gateway-center → 业务服务 ``` 所有服务向 `service-center` (Eureka) 注册,并从 `config-center` 获取配置。 # 6. 快速部署 基于docker-compose快速部署单节点环境 ## 6.1 安装docker-compose 以centos为例: ```shell yum install epel-release yum install docker yum install docker-compose ``` ## 6.2 创建容器网络 ```shell docker network create tool-box ``` ## 6.3 部署后端服务 ```shell yum install git git clone https://gitee.com/LOVE0612/tools cd tools docker-compose up -d ``` 如果不想克隆整个仓库,进需下载`docker-compose.yml`和`init.sql`即可 ## 6.4 部署前端服务 ```shell yum install git git clone https://gitee.com/LOVE0612/tools-ui cd tools-ui docker-compose up -d ``` 如果不想克隆整个仓库,进需下载`docker-compose.yml` ## 6.5 验证 ```shell docker ps ``` 需要所有启动的容器都是healthy状态 ## 6.6 访问 http://xxx.xxx.xxx.xxx