# pymanager **Repository Path**: zjw12345/pymanager ## Basic Information - **Project Name**: pymanager - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-24 - **Last Updated**: 2026-08-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PyManager PyManager 是一个基于 **Spring Boot 3** 和 **Vue 3** 的 Python 脚本后台管理系统。它提供了一个直观的 Web 界面,用于管理、监控 Python 脚本的运行状态,并支持实时日志查看和系统资源监控。 ## 核心功能 * **脚本生命周期管理**: 支持 Python 脚本的添加、编辑、删除,以及启动、停止、重启操作。 * **实时日志监控**: 通过 WebSocket 实时推送脚本日志,支持日志文件查看和清理。 * **系统资源监控**: 仪表盘实时展示服务器 CPU、内存、磁盘使用情况及单个进程的详细资源占用。 * **进程管理**: 优雅地启动和停止 Python 进程。 * **系统服务集成 (Systemd)**: 可将脚本注册为 Linux Systemd 服务,实现开机自启动和异常重启。 * **用户认证**: 提供基础的登录注册功能。 * **Docker 部署**: 支持通过 Docker Compose 快速部署前后端一体化应用。 ## 技术栈 ### 后端 * **框架**: Spring Boot 3 * **数据库**: SQLite (轻量级,无需额外部署) * **ORM**: MyBatis-Plus * **WebSocket**: Spring WebSocket (实时日志) * **构建工具**: Maven * **Java 版本**: 21 ### 前端 * **框架**: Vue 3 * **构建工具**: Vite * **UI 组件库**: Element Plus * **HTTP 客户端**: Axios * **状态管理**: Pinia ## 项目结构 ``` pymanager/ ├── .trae/ # 技术文档与规划 ├── data/ # 数据目录 │ ├── logs/ # 脚本日志目录 │ ├── pymanager.db # SQLite 数据库文件 │ └── scripts/ # Python 脚本存储目录 ├── frontend/ # Vue.js 前端项目 │ ├── src/ │ │ ├── api/ # API 接口封装 │ │ ├── views/ # 页面视图组件 │ │ ├── stores/ # Pinia 状态管理 │ │ ├── router/ # Vue Router 配置 │ │ └── utils/ # 工具函数 (WebSocket, 格式化) │ └── vite.config.js # Vite 配置 ├── src/main/java/ # Spring Boot 后端源码 │ ├── config/ # 配置类 (CORS, MyBatis, WebSocket等) │ ├── core/ # 核心引擎 │ │ ├── process/ # Python 进程引擎 │ │ ├── monitor/ # 系统监控引擎 │ │ ├── logger/ # 日志追踪引擎 │ │ └── systemd/ # Systemd 服务管理 │ └── modules/ # 业务模块 (Script, Log, Dashboard, User) ├── Dockerfile # Docker 构建文件 ├── docker-compose.yml # Docker Compose 配置 └── pom.xml # Maven 项目配置 ``` ## 快速开始 ### 环境要求 * JDK 21 * Maven 3.9+ * Node.js 20+ * Python 3.x ### 1. 初始化数据库 项目启动时会自动创建 SQLite 数据库 (`data/pymanager.db`)。如需手动初始化,请查看 `src/main/resources/schema.sql`。 ### 2. 本地运行 **后端**: 在项目根目录下运行: ```bash mvn spring-boot:run ``` 后端服务默认运行在 `http://localhost:8080`。 **前端**: ```bash cd frontend npm install npm run dev ``` 前端服务默认运行在 `http://localhost:5173`。 ### 3. Docker 部署 (推荐) 使用 Docker Compose 可以一键启动所有服务: ```bash docker-compose up -d ``` 该命令会自动构建前后端镜像,并启动 PyManager 应用、MySQL (如配置使用) 及相关服务。 ## 配置说明 主要配置位于 `src/main/resources/application.yml`,支持以下核心配置: ```yaml server: port: 8080 pymanager: log: base-dir: ./data/logs # 日志基础目录 monitor: refresh-interval: 5000 # 监控刷新间隔 (毫秒) ``` ## 主要 API 接口 * **Scripts**: `/api/scripts` - 脚本的增删改查及启停控制。 * **Dashboard**: `/api/dashboard` - 获取系统资源概览和脚本详情。 * **Logs**: `/api/logs` - 查看和清理脚本日志。 * **User**: `/api/user/login` - 用户认证。 ## License 本项目遵循开源协议,具体许可证信息请查阅 LICENSE 文件。