We're hiring! Seeking a full time, fully remote, Full Stack Developer. Applications close July 15th.

Community Apps

Browse our large and growing catalog of applications to run in your Unraid server. 

Download the Plugin  |  Become a Community Developer


Community-built

All the applications you love—built and maintained by a community member who understands what you need on Unraid. Love a particular app or plugin? Donate directly to the developer to support their work.

Created by a legend

Andrew (aka Squid) has worked tirelessly to build and enhance the experience of Community Apps for users like you. Listen to his story.

Moderated and Vetted

Moderators ensure that apps listed in the store offer a safe, compatible, and consistent experience. Learn more about our guidelines.


sagetvopen-sagetv-server-java11's Icon

sagetvopen-sagetv-server-java11

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-java16's Icon

sagetvopen-sagetv-server-java16

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-java8's Icon

sagetvopen-sagetv-server-java8

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-opendct-java11's Icon

sagetvopen-sagetv-server-opendct-java11

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player including OpenDCT: An open source digital cable tuner network encoder for SageTV Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-opendct-java16's Icon

sagetvopen-sagetv-server-opendct-java16

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player including OpenDCT: An open source digital cable tuner network encoder for SageTV Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

sagetvopen-sagetv-server-opendct-java8's Icon

sagetvopen-sagetv-server-opendct-java8

Media ApplicationsMusic, Photos, Video, Media ServersMusic, Photos, Video

SageTV is an Open Source PVR and Media Player including OpenDCT: An open source digital cable tuner network encoder for SageTV Configuration /opt/sagetv - This is the base directory for the server and other sagetv related files. Under this location there can be a 'server' directory and if the existing 'server' directory exists it will be upgraded. /var/media - Path for sagetv recordings and videos. Under this directory there should be (or will be created) a 'tv' directory where SageTV recordings will get recorded. /var/tv - Path for tv recordings if you want to store those in an alternate location. /var/mediaext - Path for extra media files. This can be whatever you want, but you will configure SageTV to look for videos, music, pictures, etc from this location. Permissions PUID - Should be the 'nobody' user for unRAID PGID - Should be the 'users' group for unRAID VIDEO_GUID - Should be the 'video' group for unRAID (used if you use PCI/USB video capture devices) Notes SageTV will need to use 'host' or 'br0' (set a unique IP) networking, so while the ports are defined, they are not required to be edited. Without 'host' or 'br0', sagetv will think your network clients are connecting as remote placeshifters, and present the placeshifter login. If using br0 mode (preferred) as the IP is unique the WebUI port of 8080 will not have any issues. If running in host mode, make sure you don't have other docker containers that are using port 8080. If you do, then EITHER change SageTV Jetty Port (in plugin configuration) after install, or, update the other docker containers to NOT use port 8080. On every Docker start, it will check for a new version of SageTV and install it, if it exists. You can force it to stay on a sepcific version by setting the Version in the template. The Version must match exactly the version tag from the github releases. There are Java 8, 11, and 16 version of these containers. Java 8 will be the default moving forward, but it currently has issues with the the /apps/ path in the Jetty Web UI. Container version: 2.0.7

SeaFile's Icon

Seafile is an open source enterprise file sync and share platform with high reliability and performance. Seafile provides similar feature set to Dropbox, Google Drive and Office 365, while it allows users to host the server on their own hardware. The core feature of Seafile is file sync and share. It provides client apps for most operating systems like Windows, Mac OS, Linux, iOS and Android. It also provides a user-friendly web interface for accessing files in a web browser.

shinobipro's Icon

Default tag is spaceinvaderone/shinobi_pro_unraid:latest but this can be changed to :nvidia To use your Nvidia GPU for encoding 1. Use the Nvidia Unraid build of Unraid 2. Set the repository tag to :nvidia ( spaceinvaderone/shinobi_pro_unraid:latest ) 3. Under Extra Parameters: add --runtime=nvidia 4. Set template field Nvidia build only -- Driver capabilities: to all 5. Set template field Nvidia build only -- GPU ID: to your GPU id from the nvida unraid plugin Shinobi is the Open Source CCTV Solution written in Node.JS. Designed with multiple account system, Streams by WebSocket, and Save to WebM. Shinobi can record IP Cameras and Local Cameras. Features Time-lapse Viewer (Watch a hours worth of footage in a few minutes) 2-Factor Authentication Defeats stream limit imposed by browsers With Base64 (Stream Type) and JPEG Mode (Option) Records IP Cameras and Local Cameras Streams by WebSocket, HLS (includes audio), and MJPEG Save to WebM and MP4 Can save Audio Push Events - When a video is finished it will appear in the dashboard without a refresh Region Motion Detection (Similar to ZoneMinder Zone Detection) Represented by a Motion Guage on each monitor "No Motion" Notifications 1 Process for Each Camera to do both, Recording and Streaming Timeline for viewing Motion Events and Videos Sub-Accounts with permissions Monitor Viewing Monitor Editing Video Deleting Separate API keys for sub account Cron Filters can be set based on master account Stream Analyzer built-in (FFprobe GUI) Monitor Groups Can snapshot images from stream directly Lower Bandwith Mode (JPEG Mode) Snapshot (cgi-bin) must be enabled in Monitor Settings Control Cameras from Interface API Get videos Get monitors Change monitor modes : Disabled, Watch, Record Embedding streams Dashboard Framework made with Google Material Design Lite, jQuery, and Bootstrap

shoko-server's Icon

shoko-server

Media ApplicationsVideo

Shoko started as a small AniDB Mylist program to a full blown client-server architecture Have a large Anime Library? File management is a tedious process, so why not let Shoko handle that? Within FIVE minutes, you’ll have Shoko up and running and populating your collection database with information about the various series and episodes in your collection. For those looking for more advanced options, we offer a wide range of utilities in Shoko Desktop to configure your collection workflow to your liking. Please note, Shoko does not provide any way to download files, stream files from streaming sites or access files that are not part of your perosnal collection.

sickchill's Icon

Sickchill(https://github.com/SickChill/SickChill) is an Automatic Video Library Manager for TV Shows. It watches for new episodes of your favorite shows, and when they are posted it does its magic.

sonarr's Icon

Sonarr(https://sonarr.tv/) (formerly NZBdrone) is a PVR for usenet and bittorrent users. It can monitor multiple RSS feeds for new episodes of your favorite shows and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.

Stash's Icon

Stash is a Go app which organizes and serves your NSFW adult media content. data: where your media collection is config: where the config file and the stash database file will be stored metadata: the main metadata folder, used for import/export functions cache: a folder to use as cache generated: where the previews, screenshots, transcoded files, and sprites will be generated. This can grow very large if you have a large collection, you may want it on your array instead of your cache, this choice is up to you.

tdarr's Icon

(Tdarr_Node included) Tdarr V2 is a distributed transcoding system for automating media library transcode/remux management and making sure your files are exactly how you need them to be in terms of codecs/streams/containers and so on. Put your spare hardware to use with Tdarr Nodes for Windows, Linux (including Linux arm) and macOS. Designed to work alongside applications like Sonarr/Radarr and built with the aim of modularisation, parallelisation and scalability, each library you add has its own transcode settings, filters and schedule. Workers can be fired up and closed down as necessary, and are split into 4 types - Transcode CPU/GPU and Health Check CPU/GPU. Worker limits can be managed by the scheduler as well as manually. For a desktop application with similar functionality please see HBBatchBeast. Docs here: https://tdarr.io/docs/ Plugins here: https://github.com/HaveAGitGat/Tdarr_Plugins

TinyMediaManager's Icon

TinyMediaManager

Media ApplicationsVideo

TinyMediaManager is a media management tool written in Java/Swing. It is written to provide metadata for the Kodi Media Center (formerly known as XBMC), MediaPortal, and Plex media server. Due to the fact that it is written in Java, tinyMediaManager will run on Windows, Linux, and macOS (and possibly more OS).

TinyMediaManager3's Icon

TinyMediaManager3

Media ApplicationsVideo, Other, Media ServersVideo, Other

tinyMediaManager is a media management tool written in Java/Swing. It is written to provide metadata for the Kodi Media Center (formerly known as XBMC), MediaPortal and Plex media server. Due to the fact that it is written in Java, tinyMediaManager will run on Windows, Linux and macOS (and possible more OS).

tsMuxeR's Icon

tsMuxer is a Transport Stream muxer. Remux/mux elementary streams, EVO/VOB/MPG, MKV/MKA, MP4/MOV, TS, M2TS to TS to M2TS. Supported video codecs H.264, VC-1, MPEG2. Supported audio codecs AAC, AC3 / E-AC3(DD+), DTS/ DTS-HD. Ability to set muxing fps manually and automatically, change level for H.264 streams, shift sound tracks, extract DTS core from DTS-HD, join files. Output/author to compliant Blu-ray Disc or AVCHD. Blu-ray 3D support. The GUI of the application is accessed through a modern web browser (no installation or configuration needed on the client side) or via any VNC client. Also, being based on Alpine Linux, size of this container is very small. For a complete documentation of this container, see https://github.com/jlesage/docker-tsmuxer#readme

tubesync's Icon

TubeSync is a PVR (personal video recorder) for YouTube. Or, like Sonarr but for YouTube (with a built-in download client). It is designed to synchronize channels and playlists from YouTube to local directories and update your media server once media is downloaded. This is a preview release of TubeSync, it may contain bugs but should be usable. *I am not the creator or maintainer of this container I am merely providing the Unraid template.

Tunarr's Icon

Create live TV channels from media on your Plex servers, and more! Access your channels by adding the spoofed Tunarr HDHomerun tuner to Plex, Jellyfin, or Emby. Or utilize generated M3U files with any 3rd party IPTV player app. Tunarr is a fork of dizqueTV. **Nvidia GPU Use:** Using the Unraid Nvidia Plugin to install a version of Unraid with the Nvidia Drivers installed and add **--runtime=nvidia** to "extra parameters" (switch on advanced view) and copy your **GPU UUID** to **NVIDIA_VISIBLE_DEVICES.** **Intel GPU Use:** Edit your **go** file to include **modprobe i915**, save and reboot, then add **--device=/dev/dri** to **"extra parameters"** (switch on advanced view)

TvhProxy's Icon

TvhProxy is a small flask app to proxy requests between Plex Media Server and Tvheadend.You have to run this Docker Container as a seperate IP Address. This Function is supportet with UNRAID 6.4 Configuration Port 80: Must be export as Port 80 Port 5004: Must be export as Port 5004

unmanic's Icon

Unmanic is a simple tool for optimising your file library with a highly customisable plugin system. Remove the complexity of automatically converting your file library. Simply point Unmanic at your library and let it manage it for you. Features: Manage multiple independent libraries of any media file type with a large range of plugins. Simple to configure - don't waste your time with hours of setup. Just get the job done with Unmanic. Support for VAAPI/QSV/NVIDIA NVENC for hardware accelerated encoding. Schedule file scans at set intervals. Configure inotify file monitors for your libraries. Link with other installations to share in distributed processing of tasks. These other installations may be on: This same Unraid server A LAN connected PC (including across subnets) A Internet connected PC behind a basic auth proxy Linux, MacOS, Windows x86, Armv7, Arm64 Advanced Configuration: LIMIT CPU USE: 1) Toggle this Docker Container template editor to "Advanced View". 2) In the "Extra Parameters" field, add "--cpus='1'". This value depends on the number of cores available to the container. To limit to 50%, set this value to 0.5 * n cores. If you have 2 cores available to this container, "--cpus='.5'" will equal 25% of that available CPU resources. To limit the CPU cores available to the continer, use "CPU Pinning" LIMIT RAM ALLOCATION: 1) Toggle this Docker Container template editor to "Advanced View". 2) In the "Extra Parameters" field, add "--memory='1g'". Unmanic can use on average around 100Mib - 500 Mib of RAM for various Disk IO tasks. Even though limiting RAM is unnecessary as Unmanic should not ever need more that 1GB RAM it is good practice to do so. Note: If you set your Cache Directory path to a tmpfs or RAM, limiting your memory allocation will affect the available RAM for the cache volume. NVIDIA GPU USE (NVDEC/NVENC): 1) Install the Nvidia-Driver plugin. 2) Toggle this Docker Container template editor to "Advanced View". 3) In the "Extra Parameters" field, add "--runtime=nvidia". 4) Expand the template "Show more settings..." section. 5) In the "NVIDIA_VISIBLE_DEVICES" variable, copy your GPU UUID (can be found in the Unraid Nvidia Plugin) INTEL GPU USE (QSV/VAAPI): 1) Install the Intel-GPU-TOP plugin. 2) Toggle this Docker Container template editor to "Advanced View". 3) In the "Extra Parameters" field, add "--device=/dev/dri". AMD GPU USE (VAAPI): 1) Install the Radeon-TOP plugin. 2) Toggle this Docker Container template editor to "Advanced View". 3) In the "Extra Parameters" field, add "--device=/dev/dri".

VideoDuplicateFinder's Icon

VideoDuplicateFinder

Media ApplicationsVideo

Video Duplicate Finder is a cross-platform software to find duplicated video (and image) files on hard disk based on similiarity. That means unlike other duplicate finders, this one does also finds duplicates which have a different resolution, frame rate and even watermarked. The GUI of the application is accessed through a modern web browser (no installation or configuration needed on the client side) or via any VNC client. Also, being based on Alpine Linux, size of this container is very small. For a complete documentation of this container, see https://github.com/jlesage/docker-video-duplicate-finder#readme

Watcharr's Icon

Open source, self-hostable watched list for all your content (movies, tv series, anime, games) with user authentication, modern and clean UI and a very simple setup.