环境变量配置
本文档详细说明了 Web-DL-Manager 支持的所有配置环境变量。这些变量可以通过 Docker 的 -e 参数进行设置。
👤 基础账户配置
用于初始化管理员账户,仅在系统首次启动且数据库为空时生效。
| 变量名 | 说明 | 默认值 | 类型 |
|---|---|---|---|
APP_USERNAME | 初始管理员用户名。 | Jyf0214 | 字符串 |
APP_PASSWORD | 初始管理员密码。 | (空) | 字符串 |
AVATAR_URL | 管理后台显示的头像链接。 | https://github.com/Jyf0214.png | URL |
🗄️ 数据库配置
| 变量名 | 说明 | 默认值 | 类型 |
|---|---|---|---|
DATABASE_URL | 数据库连接字符串。支持 SQLite 或 MySQL。 | sqlite:////data/webdl-manager.db | 字符串 |
SQLite (默认,本地轻量级)
DATABASE_URL=sqlite:////data/webdl-manager.dbMySQL (生产环境推荐)
DATABASE_URL=mysql://username:password@host:port/database_name⚙️ 核心运行配置
| 变量名 | 说明 | 默认值 | 类型 |
|---|---|---|---|
DEBUG_MODE | 开启后控制台会输出详细日志。 | false | 布尔值 (true/false) |
PRIVATE_MODE | 开启后将执行更严格的访问控制。 | false | 布尔值 (true/false) |
ENABLE_STATIC_SITE | 是否启用部署与使用说明站点(5492 端口)。 | true | 布尔值 (true/false) |
☁️ 存储与外部服务
| 变量名 | 说明 | 默认值 | 类型 |
|---|---|---|---|
REDIS_URL | Redis 连接字符串。用于任务队列和缓存。 | (未设置) | URL |
TUNNEL_TOKEN | Cloudflare Tunnel 令牌。配置后程序会自动启动内网穿透服务。 | (未设置) | 字符串 |
GITHUB_TOKEN | GitHub Personal Access Token。用于避免触发 API 速率限制。 | (未设置) | 字符串 |
💾 配置备份与同步
| 变量名 | 说明 | 默认值 | 类型 |
|---|---|---|---|
WDM_CONFIG_BACKUP_RCLONE_BASE64 | Rclone 配置文件的 Base64 编码。用于将配置备份到云端。 | (未设置) | Base64 字符串 |
WDM_CONFIG_BACKUP_REMOTE_PATH | 备份的目标远程路径。 | remote:config-backup/gallery-dl | 字符串 |
🌐 Hugging Face Spaces 专用
这些变量由 Hugging Face Spaces 平台自动设置,您通常不需要手动配置。
| 变量名 | 说明 | 默认值 | 类型 |
|---|---|---|---|
SPACE_ID | Hugging Face Space ID(由平台自动设置)。 | (未设置) | 字符串 |
📋 配置示例
示例 1:基础配置(本地 SQLite)
bash
docker run -d \
--name web-dl-manager \
-p 5492:5492 \
-v ./data:/data \
-e APP_USERNAME="admin" \
-e APP_PASSWORD="mypassword123" \
ghcr.io/jyf0214/web-dl-manager:main示例 2:启用调试模式
bash
docker run -d \
--name web-dl-manager \
-p 5492:5492 \
-v ./data:/data \
-e APP_USERNAME="admin" \
-e APP_PASSWORD="mypassword123" \
-e DEBUG_MODE="true" \
ghcr.io/jyf0214/web-dl-manager:main示例 3:使用 MySQL 数据库
bash
docker run -d \
--name web-dl-manager \
-p 5492:5492 \
-v ./data:/data \
-e DATABASE_URL="mysql://root:password@mysql-host:3306/web_dl_manager" \
-e APP_USERNAME="admin" \
-e APP_PASSWORD="mypassword123" \
ghcr.io/jyf0214/web-dl-manager:main示例 4:使用 Cloudflare Tunnel 进行内网穿透
bash
docker run -d \
--name web-dl-manager \
-p 5492:5492 \
-v ./data:/data \
-e APP_USERNAME="admin" \
-e APP_PASSWORD="mypassword123" \
-e TUNNEL_TOKEN="eyJhIjoiXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
ghcr.io/jyf0214/web-dl-manager:main示例 5:配置 Rclone 自动备份
首先获取 Rclone 配置的 Base64 编码:
bash
cat ~/.config/rclone/rclone.conf | base64 -w 0然后启动容器:
bash
docker run -d \
--name web-dl-manager \
-p 5492:5492 \
-v ./data:/data \
-e APP_USERNAME="admin" \
-e APP_PASSWORD="mypassword123" \
-e WDM_CONFIG_BACKUP_RCLONE_BASE64="W2RyaXZlXQp0eXBlID0gZHJpdmU..." \
-e WDM_CONFIG_BACKUP_REMOTE_PATH="drive:web-dl-manager-backup" \
ghcr.io/jyf0214/web-dl-manager:mainℹ️ 重要说明
- 首次启动:系统会使用
APP_USERNAME和APP_PASSWORD初始化管理员账户。如果在后续启动时更改这些环境变量,已有的账户信息不会改变。 - 布尔值:
DEBUG_MODE、PRIVATE_MODE和ENABLE_STATIC_SITE需要设置为"true"或"false"(字符串格式)。 - 可选变量:大多数存储和外部服务配置都是可选的。如果不需要,可以不设置。
- 安全建议:
- 强烈建议设置强密码(
APP_PASSWORD)。 - 敏感信息(如数据库密码)应该通过 Docker 密钥或环保理器来管理,而不是硬编码在命令中。
- 强烈建议设置强密码(