midarr-server icon indicating copy to clipboard operation
midarr-server copied to clipboard

🔥Midarr, the minimal lightweight media server.

logo

Build Status GitHub release (latest by date) GitHub license

Midarr is a minimal lightweight media server for enjoying your media:

  • Free and open source
  • Beautifully crafted user interface
  • Real-time online statuses
  • Simple and easy invite system
  • Integrates with your existing services, Radarr and Sonarr

with much more to come...

Preview

What is this?

Midarr in its' current form, is a lightweight (albeit companion) media server to the likes of Radarr and Sonarr. It relies on the integration with these services to serve your H.264 codec media untouched and unscathed.

While more fully fledged media server options already exist, Midarr simply compliments as a lightweight alternative.

What's lightweight about it?

Midarr does not:

  • Index your media
  • Transcode your media
  • Edit or configure your media

What does it do?

Your media is retrieved and served through a familiar web interface and provides:

  • User authentication
  • User profile settings
  • User online statuses

with more features planned ahead.

Usage

Docker compose example:

volumes:
  database-data:

services:
  midarr:
    container_name: midarr
    image: ghcr.io/midarrlabs/midarr-server:latest
    ports:
      - 4000:4000
    volumes:
      - /path/to/movies:/radarr/movies/path
      - /path/to/shows:/sonarr/shows/path
    environment:
#       App config
      - APP_URL=http://localhost:4000
      - [email protected]
        
#       Database config
      - DB_USERNAME=my_user
      - DB_PASSWORD=my_password
      - DB_DATABASE=my_database
      - DB_HOSTNAME=postgresql

#       Initialise admin account
      - [email protected]
      - SETUP_ADMIN_NAME=admin
      - SETUP_ADMIN_PASSWORD=passwordpassword # 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
        
#       Sendgrid email integration
      - SENDGRID_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"

Configuration

Volumes

Volumes must be provided as mounted in your Radarr and Sonarr instances:

volumes:
  - /path/to/movies:/radarr/movies/path
  - /path/to/shows:/sonarr/shows/path

This is so Midarr has the same reference to your media library as your integrations, and can serve them.

Initialise admin account

An admin account will be initialised for you on server startup, provided you have these environment variables configured:

environment:
  - [email protected]
  - SETUP_ADMIN_NAME=admin
  - SETUP_ADMIN_PASSWORD=passwordpassword # minimum length 12

Login with these credentials, and access the Settings page to configure your server.

Support

Videos

The following video format is currently supported:

  • H.264 codec
  • AAC / MP3 audio
  • MP4 / MKV container

Subtitles

A single *.srt file in the root directory of the video is currently supported:

videos/some-video
      └── some-video.mp4
      └── some-video.srt

With this setup a subtitle / caption option will be available in the player view.

Contributing

Thank you for all your contributions! Big or small - all is welcome!

License

Midarr is open-sourced software licensed under the MIT license.

Preview

Preview Preview Preview Preview