一个基于Flask的网络唤醒(Wake-on-LAN)Web应用,支持PWA功能,可以方便地管理和唤醒网络中的设备。
# 创建配置目录
mkdir data logs && touch history.json
# 创建compose文件
version: '3.8'
services:
wake-on-lan:
build: .
image: econome/wake-on-lan-web:latest
container_name: wake-on-lan
restart: unless-stopped
# Windows上使用bridge网络模式而不是host模式
# network_mode: host
volumes:
- ./history.json:/app/history.json
- ./data:/app/data
- ./logs:/app/logs
environment:
- FLASK_ENV=production
- FLASK_HOST=0.0.0.0
- FLASK_PORT=8888
- FLASK_DEBUG=false
- SECRET_KEY=agTkNAghGCqt6O
# 登录验证配置
- LOGIN_PASSWORD=admin123
- SESSION_TIMEOUT=3600
# 数据文件配置
- HISTORY_FILE=/app/history.json
# 网络超时配置(秒)
- PING_TIMEOUT=3
- ARP_TIMEOUT=10
# 自动状态检查间隔(秒)
- AUTO_CHECK_INTERVAL=60
# 日志配置
- LOG_LEVEL=INFO
- LOG_FILE=/app/logs/wake-on-lan.log
# 安全配置
# - ALLOWED_HOSTS=192.168.1.100,192.168.1.101
ports:
- "8888:8888"
# 健康检查
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8888/"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# 如果需要特权模式来发送网络包,取消下面的注释
# privileged: true
docker-compose up -d
部署完成后,通过以下地址访问:
history.json 文件中# 启动服务
docker-compose up -d
# 停止服务
docker-compose down
# 查看日志
docker-compose logs -f
# 重启服务
docker-compose restart
FLASK_HOST: 监听地址(默认: 0.0.0.0)FLASK_PORT: 监听端口(默认: 5000)FLASK_DEBUG: 调试模式(默认: false)HISTORY_FILE: 设备历史文件路径LOG_LEVEL: 日志级别(INFO/DEBUG/WARNING/ERROR)--network host 模式确保WOL功能正常无法发送WOL包
--network host 网络模式无法访问Web界面
设备状态检测失败
Docker构建失败
# Docker日志
docker logs wake-on-lan
# 应用日志文件
tail -f logs/wake-on-lan.log
# 系统服务日志
journalctl -u wake-on-lan -f
# 构建日志
docker-compose logs --tail 50
Content type
Image
Digest
sha256:610292ed8…
Size
49.3 MB
Last updated
about 1 year ago
docker pull econome/wake-on-lan-web