cloud-media-sync
简介
cloud-media-sync(cms)— 云端媒体库同步工具
监控115文件夹,生成emby可以识别的strm文件
基于 python-115,非常强大。
主要功能
- 全量同步
- 增量同步(依赖115生活事件)
- 监控上传(只上传emby生成的标准格式的媒体图片)
- 自动整理(依赖MoviePilot进行媒体识别,只进行媒体整理和重命名,不会刮削图片和nfo,这个交给emby就行了)
- 企业微信菜单交互
使用增量同步前,必须执行完成一次全量同步
安装步骤
1.创建cms
文件夹
2.cms文件夹下创建cms.yml
文件,内容如下
version: '3.5'
services:
alist-proxy:
privileged: true
container_name: cloud-media-sync
image: imaliang/cloud-media-sync:latest
restart: always
volumes:
- './config:/config'
- './logs:/logs'
- '/data/media:/media'
ports:
- '9090:9090'
environment:
- PUID=0
- PGID=0
- UMASK=000
- TZ=Asia/Shanghai
- RUN_ENV=online
- COOKIES_PATH=/config/115-cookies.txt
- SYNC_CRON=*/5 * * * *
- DIRECT_115_302_DOMAIN=http://localhost:9090
COOKIES_PATH
115cookie文件路径
SYNC_CRON
同步任务CRON表达式
DIRECT_115_302_DOMAIN
115直连域名,默认 http://localhost:9090
3.【选填】cms文件夹下,创建config/config.env
文件, 按需配置
# 视频文件后缀
VIDEO_SUFFIX=['mkv', 'mp4', 'ts', 'avi', 'mov', 'iso']
# 是否同步字幕
IS_SYNC_SUB=false
# 是否同步nfo,不建议开启
IS_SYNC_NFO=false
################## 以下选项只有使用功能【监控上传】才需要配置,不需要时不要加 ##################
# 媒体图片文件夹
# MEDIA_IMG_MONITOR_PATH = /media
################## 以下选项只有使用功能【自动整理】才需要配置,不需要时不要加 ##################
# MoviePilot可访问域名 默认 http://172.17.0.1:3000
# MP_API_DOMAIN = http://172.17.0.1:3000
# MP_API_TOKEN = moviepilot
# 待刮削115媒体文件夹cid(放入该文件夹的媒体文件会自动整理)
# NEW_MEDIA_CID = 1234863997336351234
# 新增电影115文件夹cid (整理完成后的电影会移动到这里)
# NEW_ADD_MOVIE_CID = 1234864590931031234
# 新增剧集115文件夹cid (整理完成后的剧集会移动到这里)
# NEW_ADD_TV_CID = 1234864686267561234
# 媒体文件夹格式 【1】B-白蛇:浮生-2024-[tmdb=1207123] 【2】白蛇:浮生 (2024),推荐1 便于tmdb识别刮削
# RENAME_MEDIA_DIR_FORMAT=1
# 是否对视频文件本身进行重命名 0否 1是
# RENAME_MEDIA_VIDEO=1
################## 以下选项只有使用功能【企业微信菜单交互】才需要配置,不需要时不要加 ##################
# WECHAT_COR_PID = "xxxxx"
# WeChat应用Secret
# WECHAT_APP_SECRET = "xxxxx"
# WeChat应用ID
# WECHAT_APP_ID = "xxxx"
# WeChat代理服务器
# WECHAT_PROXY = "https://qyapi.weixin.qq.com"
# WeChat Token
# WECHAT_TOKEN = "xxxxxxx"
# WeChat EncodingAESKey
# WECHAT_ENCODING_AES_KEY = "xxxxxx"
# 微信消息API URL设置为 https://你的域名/wx/message
################################################################################
4.运行 docker-compose -f cms.yml up -d
5.部署完成
6.执行全量同步(无ui,手动请求接口执行)
curl http://localhost:9090/sync/full/{cid}?path=strm生成路径
如 将测试文件夹(cid=1234864590931031234)的视频文件生成到 /media/test
curl http://localhost:9090/sync/full/1234864590931031234?path=/media/test
建议先测试一个小库,彻底搞懂怎么玩后再同步大库。
7.全量同步完测试文件夹
后,之后关于测试文件夹
的变动由增量同步完成
由于增量同步依赖115生活事件,所以无法同步文件重命名,不过文件重命名后并不影响直连的获取,所以影响不大。
docker 地址:https://hub.docker.com/r/imaliang/cloud-media-sync