# heracles-LDMT **Repository Path**: heracle/heracles-LDMT ## Basic Information - **Project Name**: heracles-LDMT - **Description**: Linux Deployment Maintenance Tools 用于多台linux环境部署和维护的工具,预期能做到国产化开源替代Ansible - **Primary Language**: Java - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: https://www.heracles.org.cn - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2019-09-23 - **Last Updated**: 2025-06-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # heracles-LDMT ### 介绍 heracles-LDMT(Linux Deployment Maintenance Tools) **一、项目背景** Heracles-LDMT 是一款基于 Java 开发的轻量化 Web 运维工具,专为多节点 Linux 环境设计。通过 SSH 协议实现无客户端化操作,支持国产化操作系统(如银河麒麟、统信 UOS)及主流 Linux 发行版(CentOS、Ubuntu 等),提供批量部署、安全审计、自动化运维能力,降低运维复杂度。 **二、核心功能** 1、多租户管理:分权管控不同 Linux 发行版(Debian/RedHat/SUSE 等),适配各系统包管理命令。 2、批量操作:多线程批量执行环境部署(更新源、安装 Java/PHP/MySQL 等),支持自定义应用模板。 3、文件管理:类 SecureFX 的 Web 文件操作(上传/下载/压缩/解压),支持属性查看与编辑。 4、安全审计:影子密码存储 SSH 凭据,记录完整操作日志,支持安装过程追溯。 5、轻量化部署:内置 SQLite 数据库,无需额外配置,解压即用。 (待实现)6、AI智能运维:联动DeepSeek分析日志,预测硬件故障,提供修复建议。 **三、适用场景** 1、企业 IT 部门批量管理多台 Linux 服务器。 2、开发团队快速搭建测试环境(Java/PHP/MySQL 等)。 3、运维人员替代部分 Ansible 功能,避免编写 YAML 脚本。


### 软件架构 **一、技术栈** | 模块 | 技术选型 | |-----------|--------------------------------------------| | 核心框架 | Spring Boot 2.1 + Spring MVC 5.0 | | 安全控制 | Apache Shiro 1.4(权限管理) + 影子密码加密 | | 持久层 | MyBatis 3.5 + Druid 1.1(连接池) + SQLite(内置数据库) | | 前端交互 | Vue2.x + Element UI(可视化操作) | | SSH 连接 | jcraft 0.1.55(实现 SSH 协议通信) | | 日志管理 | SLF4J 1.7 + Log4j(操作审计) | | (待实现)AI模块 | DeepSeek API(日志分析) + Python脚本(自动化任务) | **二、架构图** 用户浏览器 → Vue前端 → Spring Boot API → MyBatis/SQLite ↓ ↓ SSH连接池(jcraft) → 目标Linux集群 ↓ 操作日志记录 → 审计模块


### 安装教程 **一、环境要求** 1、操作系统:Windows/Linux/macOS 2、JDK 1.8+ 3、Maven 3.0+ **二、本地部署步骤** 1、克隆代码 ``` git clone https://gitee.com/heracle/heracles-LDMT.git cd heracles-LDMT ``` 2、安装Lombok插件 IDEA/Eclipse:需安装 Lombok 插件(避免编译报错)。 3、编译项目 ``` mvn clean install # 在项目根目录执行 ``` 4、启动服务 1、运行 heracles-LDMT-web 模块下的 StartUpServer.java。 2、访问地址:http://localhost/ 3、默认账号:admin/admin **三、一键启动(Docker可选)** ``` docker-compose up -d # 需提前配置 Docker 环境 ```


### 使用说明 **一、主要功能操作指南** | 功能 | 操作路径 | 示例 | |--------------|-------------------------|--------------------------------------------| | 添加 Linux 主机 | 主机管理 → 新增主机 | 输入 IP、SSH 端口(默认 22)、认证方式(密码/密钥) | | 批量安装 Java 环境 | 应用中心 → 选择模板 → 勾选主机 → 执行 | 使用预设模板“一键安装 JDK 8”,自动适配 Debian/RedHat 包命令 | | 文件操作 | 文件管理 → 选择主机 → 操作文件 | 上传 app.tar.gz 至 /opt,右键解压 | | 自定义应用模板 | 模板管理 → 新建模板 → 组合命令 | 定义“更新阿里云源”模板,替换变量 `$SOURCE_INSTALL_COMMAND$` | | 查看操作日志 | 审计日志 → 按时间/主机筛选 | 检索某台主机的 MySQL 安装记录 | **二、特色功能:变量替换** 1、系统内置变量:`$IP$`(目标主机 IP)、`$LOGIN_NAME$`(登录用户)、`$BASE_DIR$`(软件目录)。 2、示例命令:`echo "Server IP: $SERVER_IP$" > /tmp/server_info.txt`


### 参与贡献 **一、代码规范** Java:遵循阿里巴巴开发规范,使用 Lombok 简化代码。 前端:ESLint 校验 + Element UI 组件化开发。 提交信息格式:[模块] 描述(如 [SSH] 优化连接池超时机制) **二、开发流程** 1、Fork 项目至个人仓库。 2、创建分支:git checkout -b feat/your-feature。 3、提交 Pull Request 至 dev 分支,描述修改内容。 **三、贡献方向** 功能扩展:增加更多预置应用模板(如 Docker 部署)。 安全增强:支持 HTTPS 协议、审计日志加密。 兼容性:扩展对 Alpine、Arch Linux 的支持。


### 码云特技 | 特技 | 说明 | |-------|-----------------------------------------------| | 在线演示 | 访问 Demo 环境 快速体验(账号:admin/admin) | | 自动化构建 | Push 代码至 main 分支后,自动触发 Maven 打包并生成 Docker 镜像。 | | 社区支持 | 官方 QQ 群(21600754)实时答疑,Heracles 开源社区 提供文档与案例。 | | 贡献者榜单 | 提交 PR 并入后,自动展示在项目首页“贡献者”栏目。 | **立即行动** 码云仓库:https://gitee.com/heracle/heracles-LDMT 问题反馈:31307@sohu.com 社区交流QQ群:21600754,468314825