BitMagnet 配置项与 Docker 部署指南
学习笔记作者:admin日期:2025-07-21点击:25
摘要:本文详细介绍了 BitMagnet 的配置项及其影响,并提供了 Docker 部署方案,包括配置文件挂载方法和优化建议。
BitMagnet 配置项详解
以下是对 BitMagnet 配置项的详细解释及其影响:
1. Classifier(分类器)
classifier.delete_xxx
: 如果启用,将删除特定类型的文件。classifier.extensions
: 文件扩展名映射,用于分类不同类型的文件。classifier.flags
: 分类标志,可能用于标记文件类型。classifier.keywords
: 关键字列表,用于匹配文件内容进行分类。classifier.workflow
: 工作流配置,指定分类过程。
2. DHT Crawler(DHT 爬虫)
dht_crawler.bootstrap_nodes
: 初始节点列表,用于连接 DHT 网络。dht_crawler.rescrape_threshold
: 重新抓取间隔时间。dht_crawler.reseed_bootstrap_nodes_interval
: 重新连接初始节点的间隔。dht_crawler.save_files_threshold
: 保存文件的最大数量。dht_crawler.save_pieces
: 是否保存文件片段。dht_crawler.scaling_factor
: 缩放因子,影响爬虫性能。
3. DHT Server(DHT 服务器)
dht_server.port
: DHT 服务器监听端口。dht_server.query_timeout
: 查询超时时间。
4. GORM Cache(缓存)
gorm_cache.cache_enabled
: 是否启用缓存。gorm_cache.easer_enabled
: 是否启用缓存清除。gorm_cache.max_keys
: 最大缓存键数。gorm_cache.ttl
: 缓存键的生存时间。
5. HTTP Server(HTTP 服务器)
http_server.gin_mode
: Gin 框架运行模式。http_server.local_address
: 监听地址。http_server.options
: 选项设置。
6. CORS(跨域资源共享)
http_server.cors.allow_credentials
: 是否允许凭据。http_server.cors.allowed_headers
: 允许的头部字段。http_server.cors.allowed_methods
: 允许的 HTTP 方法。http_server.cors.allowed_origins
: 允许的源。http_server.cors.debug
: 是否启用调试模式。
7. Logging(日志)
log.development
: 是否启用开发模式。log.json
: 是否以 JSON 格式记录日志。log.level
: 日志级别。
8. File Rotator(日志文件轮转)
log.file_rotator.base_name
: 日志文件基础名称。log.file_rotator.max_age
: 日志文件最大保存时间。log.file_rotator.path
: 日志文件存储路径。
9. Metainfo Requester(元信息请求者)
metainfo_requester.key_mutex_size
: 并发请求锁大小。metainfo_requester.request_timeout
: 请求超时时间。
10. PostgreSQL(数据库)
postgres.host
: 数据库主机。postgres.user
: 数据库用户名。postgres.password
: 数据库密码。postgres.name
: 数据库名称。
11. Processor(处理器)
processor.concurrency
: 并发处理数量。
12. TMDB(电影数据库)
tmdb.api_key
: TMDB API 密钥。tmdb.enabled
: 是否启用 TMDB。tmdb.rate_limit
: API 请求速率限制。
Docker 部署 BitMagnet
在 Docker 中部署 BitMagnet 并挂载配置文件 config.yaml
到容器中,需要设置 Docker 容器的目录挂载(volume mapping),使得容器可以读取你本地的配置文件。
1. 使用 -v 参数挂载单个文件
docker run -d \
--name bitmagnet \
-v /root/dockerdata/bitmagnet/config.yaml:/etc/bitmagnet/config.yaml \
-p 3333:3333 \
-p 3334:3334 \
ghcr.io/bitmagnet/bitmagnet:latest
2. 挂载整个目录(推荐用于未来扩展)
docker run -d \
--name bitmagnet \
-v /root/dockerdata/bitmagnet:/etc/bitmagnet \
-p 3333:3333 \
-p 3334:3334 \
ghcr.io/bitmagnet/bitmagnet:latest
3. 使用 Docker Compose 部署
version: '3'
services:
bitmagnet:
image: ghcr.io/bitmagnet/bitmagnet:latest
container_name: bitmagnet
volumes:
- /root/dockerdata/bitmagnet:/etc/bitmagnet
ports:
- "3333:3333"
- "3334:3334"
restart: unless-stopped
配置文件示例
dht_crawler:
save_files_threshold: 20
rescrape_threshold: 720000h
bootstrap_nodes:
- router.utorrent.com:6881
http_server:
local_address: ":3333"
dht_server:
port: 3334
log:
level: info
file_rotator:
enabled: true
path: /var/log/bitmagnet
max_size: 10485760 # 10MB
max_backups: 5
max_age: 24h
postgres:
host: postgres
port: 5432
user: postgres
password: postgres
name: bitmagnet
ssl_mode: disable
tmdb:
enabled: true
api_key: your_tmdb_api_key_here