- Merge PVE (Proxmox VE) virtual machine management from remote - PVE host CRUD API - VM status query / start / stop operations - PVE database tables and models - Frontend VM status display and control buttons - SPA routing fix for nested asset paths - Keep local features: - Change password functionality - Log cleanup service - Docker containerization (Dockerfile + docker-compose) - Empty machine ping log spam fix - settings table for admin password storage - Update machines handlers to support PVE fields - Update frontend API client with PVE endpoints
54 lines
1.4 KiB
YAML
54 lines
1.4 KiB
YAML
version: '3.8'
|
||
|
||
services:
|
||
lan-manager:
|
||
build:
|
||
context: .
|
||
dockerfile: Dockerfile
|
||
image: lan-manager:latest
|
||
container_name: lan-manager
|
||
restart: unless-stopped
|
||
ports:
|
||
- "8080:8080"
|
||
volumes:
|
||
# 数据持久化:SQLite 数据库和上传文件
|
||
- ./data:/app/data
|
||
environment:
|
||
# 基础配置
|
||
- HOST=0.0.0.0
|
||
- PORT=8080
|
||
- DATA_DIR=/app/data
|
||
- DB_PATH=/app/data/lan-manager.db
|
||
|
||
# 管理员配置(⚠️ 生产环境务必修改)
|
||
- ADMIN_USER=admin
|
||
- ADMIN_PASS=admin
|
||
|
||
# 安全密钥(⚠️ 生产环境务必修改)
|
||
- SESSION_SECRET=lan-manager-secret-change-in-production
|
||
- ENCRYPT_KEY=lan-manager-default-key-change-in-production
|
||
|
||
# 功能配置
|
||
- PING_INTERVAL=60
|
||
- SSH_TIMEOUT=10
|
||
- LOG_RETENTION_DAYS=0
|
||
- UI_REFRESH_INTERVAL=10000
|
||
|
||
# 日志级别
|
||
- LOG_LEVEL=info
|
||
|
||
# 如果需要容器能 ping 通局域网其他机器,可以使用 host 网络模式
|
||
# 或者使用 macvlan 网络让容器获得独立 IP
|
||
# network_mode: host
|
||
|
||
# 如果需要 ICMP ping 权限,可以添加 capabilities
|
||
# cap_add:
|
||
# - NET_RAW
|
||
|
||
healthcheck:
|
||
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/api/health"]
|
||
interval: 30s
|
||
timeout: 5s
|
||
start_period: 10s
|
||
retries: 3
|