All apps · 0 apps
Mydia
Docker app from grtgbln's Repository
Overview
Readme
View on GitHubMydia
Your personal media companion, built with Phoenix LiveView
A modern, self-hosted media management platform for tracking, organizing, and monitoring your movies and TV shows.
Warning: Mydia is in early development (0.x.x). Expect breaking changes. Report issues or request features.
Quick Start
1. Generate secrets:
openssl rand -base64 48 # SECRET_KEY_BASE
openssl rand -base64 48 # GUARDIAN_SECRET_KEY
2. Create docker-compose.yml:
services:
mydia:
image: ghcr.io/getmydia/mydia:latest
container_name: mydia
environment:
- PUID=1000
- PGID=1000
- TZ=America/New_York
- SECRET_KEY_BASE=your-secret-key-base-here
- GUARDIAN_SECRET_KEY=your-guardian-secret-key-here
- PHX_HOST=localhost
- MOVIES_PATH=/media/library/movies
- TV_PATH=/media/library/tv
volumes:
- ./config:/config
- /path/to/media:/media
ports:
- 4000:4000
restart: unless-stopped
3. Start and access:
docker compose up -d
Open http://localhost:4000 and create your admin account.
Features
- Unified Media Management - Movies + TV shows with TMDB/TVDB metadata
- Automated Downloads - Quality profiles, smart release ranking
- Download Clients - qBittorrent, Transmission, rqbit, SABnzbd, NZBGet, debrid providers
- Indexers - Prowlarr, Jackett, built-in Cardigann (experimental)
- Multi-User - Admin/guest roles with request workflow
- SSO - Local auth + OIDC/OpenID Connect
- Import Lists - Sync from TMDB watchlists, popular, trending (experimental)
- Real-Time UI - Phoenix LiveView with instant updates
Mydia Player
A cross-platform app that streams your library from anywhere over an encrypted peer-to-peer connection. No port forwarding, no VPN.
| Platform | Get it | Notes |
|---|---|---|
| Android | Download APK | Allow installs from unknown sources |
| iOS | Join the TestFlight beta | Needs the TestFlight app |
| macOS | Download .dmg | Notarized, updates itself |
| Windows | Download installer | Per-user install, unsigned build |
| Linux | Flatpak or .tar.gz | Flatpak recommended |
| Web | Served by your own Mydia server at /player |
Nothing to install |
All platforms and install instructions
Documentation
Full documentation available at docs.mydia.dev
- Tutorials - get Mydia running from scratch
- How-to guides - install, connect clients and indexers, deploy
- Reference - environment variables, configuration, database, API
- Explanation - how Mydia works and why
- Contributing - development setup
Screenshots
| Movies | TV Shows | Calendar |
|---|---|---|
![]() |
![]() |
![]() |
Contributing
./dev up -d # Start development environment
./dev mix ecto.migrate # Run migrations
./dev mix test # Run tests
./dev mix precommit # Run all checks
See the Development Guide for details.
Documentation
Docs are built with MkDocs and Material for MkDocs. Requires uv.
uv sync --project docs # Install dependencies
uv run --project docs mkdocs serve # Serve at http://localhost:8000
uv run --project docs mkdocs build # Build static site to /site
License
Built with Elixir & Phoenix
Media gallery
1 / 5Install Mydia on Unraid in a few clicks.
Find Mydia in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Requirements
Additional configuration options documented here: https://github.com/getmydia/mydia#-environment-variables-reference
Related apps
Explore more like this
Explore allDetails
ghcr.io/getmydia/mydia:latestRuntime arguments
- Web UI
http://[IP]:[PORT:4000]/- Network
bridge- Privileged
- false
Template configuration
Container Port: 4000
- Target
- 4000
- Default
- 4000
- Value
- 4000
Generate with 'openssl rand -base64 48'
- Target
- SECRET_KEY_BASE
Generate with 'openssl rand -base64 48'
- Target
- GUARDIAN_SECRET_KEY
Change to your domain or IP address
- Target
- PHX_HOST
- Default
- localhost
- Value
- localhost
Path to your movies folder on the host system
- Target
- /media/movies
Path to your TV shows folder on the host system
- Target
- /media/tv
Path to your downloads folder on the host system
- Target
- /media/downloads
Path to the configuration folder
- Target
- /config
- Default
- /mnt/user/appdata/mydia/config
- Value
- /mnt/user/appdata/mydia/config
Internal application port. Not recommended to change.
- Target
- PORT
- Default
- 4000
- Value
- 4000
Internal path to movies folder. Not recommended to change.
- Target
- MOVIES_PATH
- Default
- /media/movies
- Value
- /media/movies
Internal path to TV shows folder. Not recommended to change.
- Target
- TV_PATH
- Default
- /media/tv
- Value
- /media/tv
Internal path to the database file. Not recommended to change.
- Target
- DATABASE_PATH
- Default
- /config/mydia.db
- Value
- /config/mydia.db


