917 字
5 分钟
🚀 快速开始指南

使用 docker-compose 一键部署 sehuatang-crawler + PostgreSQL,默认端口 8000,数据与日志均持久化到 Docker 卷。

1) 环境要求

• 操作系统:支持docker的x86机型

• 依赖:Docker 24+、Docker Compose v2+

• 网络:能访问目标站点;如需代理请准备好 HTTP/HTTPS 代理地址

2) 准备 docker-compose.yml

将下面内容保存为 docker-compose.yml(你已经有了,可直接用):

version: '3.8'
services:
sehuatang-crawler:
image: wyh3210277395/magnetboard:latest
container_name: sehuatang-crawler
ports:
- "8000:8000"
environment:
# 数据库配置
- DATABASE_HOST=postgres
- DATABASE_PORT=5432
- DATABASE_NAME=sehuatang_db
- DATABASE_USER=postgres
- DATABASE_PASSWORD=postgres123
# 应用配置
- PYTHONPATH=/app/backend
- ENVIRONMENT=production
- ADMIN_PASSWORD=admin123
# 代理配置(可选)
- HTTP_PROXY=http://your-proxy:port
- HTTPS_PROXY=http://your-proxy:port
- NO_PROXY=localhost,127.0.0.1,192.168.0.0/16,10.0.0.0/8,172.16.0.0/12
# Telegram 机器人配置(可选)
- TELEGRAM_BOT_TOKEN=你的Bot_Token
- TELEGRAM_BOT_WEBHOOK_URL= # 可选,留空使用轮询模式
- TELEGRAM_BOT_WEBHOOK_SECRET= # 可选
# CloudDrive2 配置(可选)
- CLOUDDRIVE_HOST=你的CD2主机地址
- CLOUDDRIVE_PORT=你的CD2端口
volumes:
- sehuatang_data:/app/data
- sehuatang_logs:/app/logs
depends_on:
- postgres
restart: unless-stopped
postgres:
image: postgres:15-alpine
container_name: sehuatang-postgres
ports:
- "5432:5432"
environment:
- POSTGRES_DB=sehuatang_db
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres123
volumes:
- postgres_data:/var/lib/postgresql/data
restart: unless-stopped
volumes:
sehuatang_data:
sehuatang_logs:
postgres_data:
networks:
default:
name: sehuatang-network

3) 启动

Terminal window
docker compose up -d

首次启动时间:约 10–60 秒(取决于镜像拉取与数据库初始化速度)。

访问地址:http://<你的IP或域名>:8000

接口文档:http://<你的IP或域名>:8000/docs

如果你的反向代理占用了 8000 端口,修改 ports: “8000:8000” 的左侧为其它端口即可(例如 18000:8000)。

4) 首次登录与面板入口

• 默认管理员密码:ADMIN_PASSWORD 环境变量(compose 里配置的值)

• 登录后可看到以下菜单:

• 【爬虫管理中心】|【定时任务】|【数据总览】|【订阅监控】|【订阅总览】|【下载器配置】

5) 基本配置(3 分钟搞定)

  1. (可选)代理:在 docker-compose.yml 里填上 HTTP_PROXY / HTTPS_PROXY / NO_PROXY,docker compose up -d 重启生效。

  2. 订阅爬虫 Cookie:在【订阅监控】粘贴色花堂账号 Cookie(必填,否则订阅类任务无法运行)。

  3. 下载器对接(智能推送):在【下载器配置】连接 qBittorrent / CD2 / 115,并为每个“板块分类”设置保存目录(目录最后一级名称需与分类完全一致)。

  4. 定时任务:(番号定时爬虫记得任务时间间隔开,否则会一直撞cf墙)

• 番号爬虫 → 在【定时任务】里设定计划(cron/间隔)

• 订阅爬虫 → 在【订阅监控】里创建订阅定时任务

6) 常用命令

Terminal window
# 查看运行状态
docker compose ps
# 查看应用日志 / 数据库日志
docker compose logs -f sehuatang-crawler
docker compose logs -f sehuatang-postgres
# 重启服务
docker compose restart
# 停止并移除容器(保留数据卷)
docker compose down

7) 数据持久化与备份

• 应用数据:sehuatang_data(Docker 卷)

• 应用日志:sehuatang_logs(Docker 卷)

• 数据库数据:postgres_data(Docker 卷)

8) 更新/回滚

Terminal window
# 拉取最新镜像
docker pull wyh3210277395/magnetboard:latest
# 重启生效
docker compose down && docker compose up -d

9) 可选集成(按需)

Telegram Bot:设置 TELEGRAM_BOT_TOKEN(以及 Webhook 可选项),用于群内提醒/控制。

CloudDrive2(CD2):CLOUDDRIVE_HOST / CLOUDDRIVE_PORT,用于智能推送到网盘。

MetaTube:METATUBE_URL,用于元数据/预处理(暂时不可用)。

10) 故障排查(FAQ)

网页打不开:确认容器在运行(docker compose ps),端口未被占用,防火墙已放行。

数据库起不来:若绑定的是宿主目录,请确保数据目录归属正确(例如 chown -R 999:999 <你的pg目录>);用 Docker 卷通常不会有权限问题。

订阅抓不到:大多是 Cookie 失效,请在【订阅监控】更新后重试。

智能推送失败:检查下载器是否连通;目录末级名是否与分类完全一致;目录是否存在且可写。

网络受限:配置 HTTP_PROXY/HTTPS_PROXY/NO_PROXY 后重启容器。

🔗 GitHub 仓库https://github.com/wyhfx/sehuatang-crawler

有问题可到仓库提 Issue,或在 TG 群反馈。

🚀 快速开始指南
https://fuwari.vercel.app/posts/magnetboard-docs/快速开始/
作者
Lance
发布于
2025-09-28
许可协议
CC BY-NC-SA 4.0