通过轻量级媒体服务器享受您的媒体
免费且开源(永远如此),Midarr旨在为您和您的用户提供量身定制的体验:
这是什么?
这是一个轻量级(尽管是配套的)媒体服务器,类似于Radarr和Sonarr。 您的媒体保持原样不变,通过一个简单(但熟悉)的网络界面提供服务,将您的媒体置于您和您的用户享受的中心位置。
虽然其他媒体解决方案试图重新索引、重新获取和重复处理您的媒体库,但Midarr只是利用您现有的服务来愉悦和增强您的媒体体验。
它如何实现轻量级?
- 直接流媒体。 您的媒体直接从硬件新鲜提供。
- 智能缓存。 您的媒体与您的集成智能保持同步。
- 集成体验。 您的媒体保持您喜欢的方式。
它还能做什么?
您的媒体通过一个精美的网络界面提供服务,包括:
- 用户认证
- 用户配置设置
- 用户在线状态
更多功能正在计划中。
使用方法
Docker compose
volumes:
database-data:
services:
midarr:
container_name: midarr
image: ghcr.io/midarrlabs/midarr-server:latest
ports:
- 4000:4000
volumes:
- /path/to/media:/media
environment:
# 应用配置
- APP_URL=http://midarr:4000
# 数据库配置
- DB_USERNAME=my_user
- DB_PASSWORD=my_password
- DB_DATABASE=my_database
- DB_HOSTNAME=postgresql
# 管理员账户
- SETUP_ADMIN_EMAIL=admin@email.com
- SETUP_ADMIN_NAME=admin
- SETUP_ADMIN_PASSWORD=somepassword # 最小长度12位
# Radarr集成
- RADARR_BASE_URL=radarr:7878
- RADARR_API_KEY=someApiKey
# Sonarr集成
- SONARR_BASE_URL=sonarr:8989
- SONARR_API_KEY=someApiKey
depends_on:
postgresql:
condition: service_healthy
postgresql:
container_name: postgresql
image: postgres
volumes:
- database-data:/var/lib/postgresql/data
environment:
- POSTGRES_USER=my_user
- POSTGRES_PASSWORD=my_password
- POSTGRES_DB=my_database
healthcheck:
test: "exit 0"
管理员账户
要初始化此账户,请提供以下环境变量。这将允许您在设置页面配置您的服务器。
environment:
- SETUP_ADMIN_EMAIL=admin@email.com
- SETUP_ADMIN_NAME=admin
- SETUP_ADMIN_PASSWORD=somepassword # 最短长度12位
邀请系统
要发送邀请,请提供以下环境变量。访问设置页面邀请用户到您的服务器。
environment:
- APP_MAILER_FROM=example@email.com
- SENDGRID_API_KEY=someApiKey
OIDC / OAuth 2.0
要使用自己的身份提供商(如Authentik),请提供以下环境变量。访问/auth
以启动认证流程。
environment:
- OAUTH_CLIENT_ID=someClientId
- OAUTH_CLIENT_SECRET=someClientSecret
- OAUTH_ISSUER_URL=http://some-provider.url
- OAUTH_AUTHORIZE_URL=http://some-provider.url/authorize
- OAUTH_TOKEN_URL=http://some-provider.url/token
- OAUTH_REDIRECT_URI=http://some-provider.url/auth/callback
- OAUTH_USER_URL=http://some-provider.url/user
支持
视频
- H.264 / H.265 编解码器
- AAC / MP3 音频
- MP4 / MKV 容器
字幕
目前支持视频根目录下的单个**.srt**文件。使用这种设置,播放器视图中将提供字幕/标题选项。
library/video
└──video.srt
└──video.mp4
常见问题
为什么我的媒体无法播放?
Midarr依赖于您的集成来解析您的媒体位置。Midarr不知道您的媒体存放在哪里! 挂载媒体库的常见方法是挂载电影和剧集所在的根目录:
services:
midarr:
volumes:
- /path/to/media:/media
radarr:
volumes:
- /path/to/media:/media
sonarr:
volumes:
- /path/to/media:/media
为什么我的媒体无法同步?
要保持媒体同步,您的集成中需要配置webhook URL。Midarr接受来自您的集成的POST请求,其中包含您的唯一API令牌(可在Midarr设置页面找到)。
在Radarr / Sonarr的设置 -> 连接 -> Webhook
下添加这些webhook URL:
Radarr示例
http://midarr:4000/api/webhooks/movie?token=some-api-token
Sonarr示例
http://midarr:4000/api/webhooks/series?token=some-api-token
支持哪些集成?
我们支持以下集成版本:
- Radarr
v5.x
- Sonarr
v4.x
贡献
感谢您的所有贡献!无论大小,我们都欢迎!
本地开发
- Fork并克隆仓库
git clone https://github.com/{ YOUR-ACCOUNT }/midarr-server.git
- 使用Docker Compose启动堆栈
cd midarr-server && docker compose up -d
- 服务位置:
- http://localhost:4000 - Midarr
- http://localhost:7878 - Radarr
- http://localhost:8989 - Sonarr
许可证
Midarr是根据MIT许可证许可的开源软件。
预览