必须自行挂载媒体目录到 /media,且 Radarr/Sonarr 需挂载相同路径,否则无法播放;需在 Radarr/Sonarr 的 Settings -> Connect -> Webhook 中配置带 API Token 的 webhook 地址才能同步媒体;SETUP_ADMIN_PASSWORD 长度至少 12 位,且需额外提供 PostgreSQL 连接配置。
midarr-server
midarrlabsMIT更新放缓轻量级自托管媒体服务器,可管理并串流播放本地影音库,还能与 Radarr、Sonarr 联动,适合想用低资源搭建私人流媒体的人。
🔥Midarr, the minimal lightweight media server.
docker compose up -dREADME 未说明显存或 CPU 要求;官方以 Docker 镜像 ghcr.io/midarrlabs/midarr-server 分发,需配合 PostgreSQL 容器运行。
轻量媒体服务器,复用已有 Radarr/Sonarr 媒体库,直接串流给用户观看
轻量级自托管媒体服务器,可管理并串流播放本地影音库,还能与 Radarr、Sonarr 联动,适合想用低资源搭建私人流媒体的人。
核心能力
- 直接串流播放,不重新索引或转存媒体文件
- 通过 webhook 与 Radarr/Sonarr 保持媒体同步
- 内置用户认证、个人资料与实时在线状态
- 支持邮件邀请用户及 OIDC/OAuth 2.0 登录
- 提供 Docker Compose 一键部署整套服务
容易踩的坑
- v4.3.0v4.3.0 - Counting my seasons最新正式版2024-08-16 · 2024-08-16 00:56 UTC
New features
- Add api series season count - https://github.com/midarrlabs/midarr-server/commit/a76feb334d3eea27815824d3eca0e7891a08ab22
Full Changelog: https://github.com/midarrlabs/midarr-server/compare/v4.2.0...v4.3.0
- v4.2.0v4.2.0 - Push Notifications, API improvements2024-01-22 · 2024-01-22 22:04 UTC
查看更新说明
New features
- Automate sending push notifications by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/416
- Add follow movie by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/408
- Add follow series by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/409
- Add API token display by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/411
- Add API search by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/428
- Add API series by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/434
Full Changelog: https://github.com/midarrlabs/midarr-server/compare/v4.1.2...v4.2.0
- v4.1.2v4.1.2 - Small But Effective2023-10-11 · 2023-10-11 05:40 UTC
查看更新说明
Patches
- API Token. Addresses the issue of API Token not visible in web UI. Now displayed under
Settingspage.
Full Changelog: https://github.com/midarrlabs/midarr-server/compare/v4.1.0...v4.1.2
- API Token. Addresses the issue of API Token not visible in web UI. Now displayed under
- v4.1.0v4.1.0 - Hey Queued Looking 👀2023-09-18 · 2023-09-18 05:26 UTC
查看更新说明
New features
- UI / UX refined. Using what we learned from the initial
v3.0.0refresh, we've further refined the UI / UX to pave the way for future improvements - keep a look out for more to come utilising the new layout. - Queued movies / series. Your users can now anticipate what's in the "queue" by way of upcoming movies and series. All movies and series that are set as "monitored" in Radarr and Sonarr will now surface to your users.
- Media progress. See where you last left off from in movies and episodes anywhere they are displayed. Seamlessly pick up where you left off and continue watching.
Full Changelog: https://github.com/midarrlabs/midarr-server/compare/v4.0.0...v4.1.0 Full Discussion: https://github.com/orgs/midarrlabs/discussions/406
- UI / UX refined. Using what we learned from the initial
- v4.0.0v4.0.0 - Houston, We Have A Client 🚀2023-08-13 · 2023-08-13 22:46 UTC
查看更新说明
Breaking changes
- Playlists page. Removed.
- Continues page. Removed.
- Radarr webhook. Requires manual setup with API token.
- Sonarr webhook. Requires manual setup with API token.
❗Important - This release requires a new fresh install. This is not backwards compatible with previous releases.
New features
- Remove theme alternatives by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/363
- Add history by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/364
- Add playback progress by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/377
- Add OIDC by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/374
- Add API tokens by @trueChazza in https://github.com/midarrlabs/midarr-server/pull/382
Full Changelog: https://github.com/midarrlabs/midarr-server/compare/v3.1.0...v4.0.0 Full Discussion: https://github.com/orgs/midarrlabs/discussions/389
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Free and open source (and always will be), Midarr aims to provide a tailored experience for you and your users:
- Beautifully crafted user interface
- Real-time online statuses
- Simple and easy invite system
- Integrates with your existing services, Radarr and Sonarr

What is this?
This is a lightweight (albeit companion) media server to the likes of Radarr and Sonarr. Your media is left untouched and unscathed as it is served through a simple (yet familiar) web interface that puts your media front and center for you and your users to enjoy.
While other media solutions look to re-index, re-fetch and re-double handle your media library, Midarr simply leverages your pre-existing services to delight and enhance your media experience.

How is this lightweight?
- Direct streaming. Your media served fresh off the metal.
- Smart caching. Your media smartly kept in sync with your integrations.
- Integrated experience. Your media kept the way you like it.
What else does this do?
Your media is served through a slick web interface providing:
- User authentication
- User profile settings
- User online statuses
with more features planned ahead.
Usage
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 config
- APP_URL=http://midarr:4000
# Database config
- DB_USERNAME=my_user
- DB_PASSWORD=my_password
- DB_DATABASE=my_database
- DB_HOSTNAME=postgresql
# Admin account
- [email protected]
- SETUP_ADMIN_NAME=admin
- SETUP_ADMIN_PASSWORD=somepassword # minimum length 12
# Radarr integration
- RADARR_BASE_URL=radarr:7878
- RADARR_API_KEY=someApiKey
# Sonarr integration
- 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"
Admin account
To initialise this, please provide the following environment variables. This will allow you to configure your server at the settings page.
environment:
- [email protected]
- SETUP_ADMIN_NAME=admin
- SETUP_ADMIN_PASSWORD=somepassword # minimum length 12
Invite system
To send invitations, please provide the following environment variables. Access the settings page to invite users to your server.
environment:
- [email protected]
- SENDGRID_API_KEY=someApiKey
OIDC / OAuth 2.0
To use your own identity provider like Authentik, please provide the following environment variables. Go to /auth to initiate the auth flow.
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
Support
Videos
- H.264 / H.265 codec
- AAC / MP3 audio
- MP4 / MKV container
FAQ
Why won't my media play?
Midarr looks to your integrations to resolve your media locations. Midarr is not aware of where your media lives! A common way to mount a media library is to mount the root directory where both movies and series reside:
services:
midarr:
volumes:
- /path/to/media:/media
radarr:
volumes:
- /path/to/media:/media
sonarr:
volumes:
- /path/to/media:/media
Why won't my media sync?
To keep your media in sync, webhook urls are required in your integrations. Midarr accepts a POST request from your integrations with your unique API Token (found on the Midarr Settings page).
Add these webhook urls to Radarr / Sonarr under Settings -> Connect -> Webhook:
Radarr example
http://midarr:4000/api/webhooks/movie?token=some-api-token
Sonarr example
http://midarr:4000/api/webhooks/series?token=some-api-token
What integrations does this support?
We support the following integration versions:
- Radarr
v5.x - Sonarr
v4.x
Contributing
Thank you for all your contributions! Big or small - all is welcome!
Local development
- Fork and git clone the repository
git clone https://github.com/{ YOUR-ACCOUNT }/midarr-server.git
- Docker compose up the stack
cd midarr-server && docker compose up -d
- Service locations:
- http://localhost:4000 - Midarr
- http://localhost:7878 - Radarr
- http://localhost:8989 - Sonarr
License
Midarr is open-sourced software licensed under the MIT license.
Preview
