2026-04-10 22:47:40 +08:00
|
|
|
# Proxmox VM 控制工具
|
2026-03-30 14:17:50 +08:00
|
|
|
|
2026-04-10 22:47:40 +08:00
|
|
|
一个用于控制 Proxmox 虚拟机的工具集,包含 Python 任务控制器和 Rust GUI 应用程序。
|
2026-03-30 14:17:50 +08:00
|
|
|
|
2026-04-10 22:47:40 +08:00
|
|
|
## 项目结构
|
2026-03-30 14:17:50 +08:00
|
|
|
|
2026-04-10 22:47:40 +08:00
|
|
|
- **Python 任务控制器** - `proxmox_task_controller.py` / `proxmox_task_runner.py`
|
|
|
|
|
- 待机监听:持续监控命令目录,平时保持低功耗状态
|
|
|
|
|
- 自动启停:按需启动/关闭 Proxmox 虚拟机
|
|
|
|
|
- 任务执行:通过 SSH 在 VM 内执行命令
|
|
|
|
|
|
|
|
|
|
- **Rust GUI 应用** - `src/` (基于 egui)
|
|
|
|
|
- 图形界面:简单易用的 VM 控制面板
|
|
|
|
|
- API 调用:通过 Proxmox REST API 控制虚拟机
|
|
|
|
|
- 中文界面:支持中文字体显示
|
2026-03-30 14:17:50 +08:00
|
|
|
|
|
|
|
|
## 快速开始
|
|
|
|
|
|
2026-04-10 22:47:40 +08:00
|
|
|
### Rust GUI 应用
|
|
|
|
|
|
|
|
|
|
#### 环境要求
|
|
|
|
|
|
|
|
|
|
- Rust 1.70+
|
|
|
|
|
- MSYS2 + MinGW (x86_64-pc-windows-gnu)
|
|
|
|
|
|
|
|
|
|
#### 编译
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
# Debug
|
|
|
|
|
cargo build --target x86_64-pc-windows-gnu
|
|
|
|
|
|
|
|
|
|
# Release
|
|
|
|
|
cargo build --release --target x86_64-pc-windows-gnu
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 配置
|
|
|
|
|
|
|
|
|
|
编辑 `.env` 文件:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
PROXMOX_HOST=your-proxmox-host
|
|
|
|
|
PROXMOX_USER=root@pam
|
|
|
|
|
PROXMOX_TOKEN=your-api-token
|
|
|
|
|
VM_ID=100
|
|
|
|
|
NODE=proxmox
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 运行
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
./target/x86_64-pc-windows-gnu/release/proxmox-vm-gui.exe
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
### Python 任务控制器
|
|
|
|
|
|
|
|
|
|
#### 环境要求
|
2026-03-30 14:17:50 +08:00
|
|
|
|
2026-03-30 15:41:08 +08:00
|
|
|
- Python 3.8+
|
|
|
|
|
- Proxmox VE 6.x+
|
2026-03-30 14:17:50 +08:00
|
|
|
|
2026-04-10 22:47:40 +08:00
|
|
|
#### 安装
|
2026-03-30 14:17:50 +08:00
|
|
|
|
|
|
|
|
```bash
|
2026-04-10 22:47:40 +08:00
|
|
|
pip install -r proxmox_task/requirements.txt
|
2026-03-30 14:17:50 +08:00
|
|
|
```
|
|
|
|
|
|
2026-04-10 22:47:40 +08:00
|
|
|
#### 配置
|
|
|
|
|
|
2026-03-30 14:17:50 +08:00
|
|
|
```bash
|
2026-03-30 15:41:08 +08:00
|
|
|
export PROXMOX_HOST="your-proxmox-host"
|
|
|
|
|
export PROXMOX_USER="root@pam"
|
|
|
|
|
export PROXMOX_TOKEN="your-api-token"
|
|
|
|
|
export VM_ID="100"
|
2026-03-30 14:17:50 +08:00
|
|
|
```
|
|
|
|
|
|
2026-04-10 22:47:40 +08:00
|
|
|
#### 运行
|
|
|
|
|
|
2026-03-30 14:17:50 +08:00
|
|
|
```bash
|
2026-03-30 15:41:08 +08:00
|
|
|
python3 proxmox_task_controller.py
|
2026-03-30 14:17:50 +08:00
|
|
|
```
|
|
|
|
|
|
2026-03-30 15:41:08 +08:00
|
|
|
## 配置选项
|
2026-03-30 14:17:50 +08:00
|
|
|
|
2026-03-30 15:41:08 +08:00
|
|
|
| 变量名 | 说明 | 默认值 |
|
|
|
|
|
|--------|------|--------|
|
2026-04-10 22:47:40 +08:00
|
|
|
| PROXMOX_HOST | Proxmox 主机地址 | localhost |
|
|
|
|
|
| PROXMOX_USER | API 用户 | root@pam |
|
2026-03-30 15:41:08 +08:00
|
|
|
| PROXMOX_TOKEN | API Token | (必需) |
|
2026-04-10 22:47:40 +08:00
|
|
|
| VM_ID | 虚拟机 ID | 100 |
|
|
|
|
|
| NODE | 节点名称 | proxmox |
|
2026-03-30 14:17:50 +08:00
|
|
|
|
|
|
|
|
## 许可证
|
|
|
|
|
|
|
|
|
|
MIT License
|