This commit is contained in:
aaron 2026-05-14 22:18:59 +08:00
parent 13ffe63dbd
commit 9d9983fb3f
2 changed files with 25 additions and 16 deletions

View File

@ -13,10 +13,19 @@ python3 -m app
默认登录: 默认登录:
- 用户名:`admin` - 用户名:`admin`
- 密码:`change-me-now` - 密码:`ADMIN_PASSWORD` 决定,`.env.example` 中示例为 `12345678`
首次启动会把 `ADMIN_PASSWORD` 写入数据库并保存为哈希。之后请在管理台的「账号安全」页面修改密码;修改后环境变量不会覆盖数据库中的新密码。 首次启动会把 `ADMIN_PASSWORD` 写入数据库并保存为哈希。之后请在管理台的「账号安全」页面修改密码;修改后环境变量不会覆盖数据库中的新密码。
Docker Compose 会自动读取同目录 `.env`。示例:
```env
ADMIN_USERNAME=admin
ADMIN_PASSWORD=12345678
SESSION_SECRET=DBUwycvdxjSUZX4LMvUKa0xMzWKzFJmg
WEBHOOK_TOKEN=vvyVmc33aC0I85LkH4yrd6ojvkqmyrb1
```
## Docker ## Docker
```bash ```bash

View File

@ -4,13 +4,13 @@ services:
ports: ports:
- "8030:8000" - "8030:8000"
environment: environment:
ADMIN_USERNAME: admin ADMIN_USERNAME: ${ADMIN_USERNAME:-admin}
ADMIN_PASSWORD: change-me-now ADMIN_PASSWORD: ${ADMIN_PASSWORD:-change-me-now}
SESSION_SECRET: replace-with-a-long-random-secret SESSION_SECRET: ${SESSION_SECRET:-replace-with-a-long-random-secret}
WEBHOOK_TOKEN: replace-with-a-shared-webhook-secret WEBHOOK_TOKEN: ${WEBHOOK_TOKEN:-}
RETENTION_DAYS: 30 RETENTION_DAYS: ${RETENTION_DAYS:-30}
MAX_DELIVERY_ATTEMPTS: 3 MAX_DELIVERY_ATTEMPTS: ${MAX_DELIVERY_ATTEMPTS:-3}
RETRY_BACKOFF_SECONDS: 60 RETRY_BACKOFF_SECONDS: ${RETRY_BACKOFF_SECONDS:-60}
volumes: volumes:
- dispatcher-data:/data - dispatcher-data:/data
@ -18,14 +18,14 @@ services:
build: . build: .
command: ["python", "-m", "app.worker"] command: ["python", "-m", "app.worker"]
environment: environment:
ADMIN_USERNAME: admin ADMIN_USERNAME: ${ADMIN_USERNAME:-admin}
ADMIN_PASSWORD: change-me-now ADMIN_PASSWORD: ${ADMIN_PASSWORD:-change-me-now}
SESSION_SECRET: replace-with-a-long-random-secret SESSION_SECRET: ${SESSION_SECRET:-replace-with-a-long-random-secret}
WEBHOOK_TOKEN: replace-with-a-shared-webhook-secret WEBHOOK_TOKEN: ${WEBHOOK_TOKEN:-}
RETENTION_DAYS: 30 RETENTION_DAYS: ${RETENTION_DAYS:-30}
MAX_DELIVERY_ATTEMPTS: 3 MAX_DELIVERY_ATTEMPTS: ${MAX_DELIVERY_ATTEMPTS:-3}
RETRY_BACKOFF_SECONDS: 60 RETRY_BACKOFF_SECONDS: ${RETRY_BACKOFF_SECONDS:-60}
WORKER_INTERVAL_SECONDS: 15 WORKER_INTERVAL_SECONDS: ${WORKER_INTERVAL_SECONDS:-15}
volumes: volumes:
- dispatcher-data:/data - dispatcher-data:/data