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.
Bringing all of your home videos, music, and photos together into one place has never been easier. Your personal Emby Server automatically converts and streams your media on-the-fly to play on any device.
Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media. It is an alternative to the proprietary Emby and Plex, to provide media from a dedicated server to end-user devices via multiple apps. Jellyfin is descended from Emby's 3.5.2 release and ported to the .NET Core framework to enable full cross-platform support. There are no strings attached, no premium licenses or features, and no hidden agendas: just a team who want to build something better and work together to achieve it.
The Plex Media Server enriches your life by organizing all your personal media, presenting it beautifully and streaming it to all of your devices. It's easy to use, it's awesome, and it's free!
The plexpass Media Server enriches your life by organizing all your personal media, presenting it beautifully and streaming it to all of your devices. It's easy to use, it's awesome, and it's free!
Tvheadend is a TV streaming server and recorder for Linux, FreeBSD and Android supporting DVB-S, DVB-S2, DVB-C, DVB-T, ATSC, ISDB-T, IPTV, SAT>IP and HDHomeRun as input sources. Tvheadend offers the HTTP (VLC, MPlayer), HTSP (Kodi, Movian) and SAT>IP streaming. Multiple EPG sources are supported (over-the-air DVB and ATSC including OpenTV DVB extensions, XMLTV, PyXML).
Emby Server is a home media server built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. Bringing together movies, music, television and more in one dazzling interface.
Directories:
/config : this path is used to store Emby's configuration.
/mnt : this path is used to add library locations to Emby.
Emby Server is a home media server built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. Bringing together movies, music, television and more in one dazzling interface.
Directories:
/config : this path is used to store Emby's configuration.
/mnt : this path is used to add library locations to Emby.
This is beta.
A modern web client for Jellyfin based on Vue. It relies on Jellyfin to store and manage your media. This version uses server side rendering for improved performance.
Web application for archival and reading of manga/doujinshi. Lightweight and Docker-ready for NAS/servers.
* If you encounter an error while uploading files, please make sure the content folder has write permissions *
Lomorage enables you to backup photos / videos from any devices to your self-hosted server, and intelligently manages these personal assets via AI. Run the Lomorage server at your home, download mobile client to save the memories, and enjoy the moments.
Lychee(https://lycheeorg.github.io/) is a free photo-management tool, which runs on your server or web-space. Installing is a matter of seconds. Upload, manage and share photos like from a native application. Lychee comes with everything you need and all your photos are stored securely."
This is the latest Nextcloud-27.1.4-apache image with additional packages and plugins installed to support videos and facial recognition:
- ffmpeg (install from apt repository)
- pdlib (built from source)
- bzip (built from source)
INSTALLATION
First install a MariaDB or PostgreSQL container. Changing their paths to /mnt/cache/appdata/... (instead of /mnt/user/appdata/...) will enormously boost Nextcloud's loading times!
After that use the database's IP:Port and credentials to install Nextcloud.
Optionally install the Swag or Nginx Proxy Manager container allows you to access Nextcloud from outside of your home through HTTPS (do not forget forwarding the Ports 80 and 443 in your router). Note: The proxy itself needs to communicate through HTTP (not HTTPS) with Nextcloud.
INSTALL AND CONFIGURE NEXTCLOUD MEMORIES
Install Memories from within the Nextcloud application and provide it the base folder for your media when it asks. Launch a console into the container and run the following commands individually:
php occ memories:video-setup (follow the prompts)
php occ memories:index
INSTALL AND CONFIGURE FACIAL RECOGNITION
Install the 'face recognition' app from within the Nextcloud application.
Launch a terminal for the container and run the following command to initialize it (customize to suit):
php occ face:setup --memory 1024M --model 1
From within the application, visit settings the face recognition settings and select a temporary file size.
To kick off scanning for faces:
php occ face:background_job
UPDATES
Nextcloud often needs manual interaction to fix database indexes. In those cases execute the following through the Unraid Terminal to fix them:
docker exec --user 99 Nextcloud php occ db:add-missing-indices
Sometimes this command is needed:
docker exec --user 99 Nextcloud php occ db:convert-filecache-bigint --no-interaction
This is a template for the Nextcloudpi docker container, this is an all in one solution for someone wanting to run Nextcloud on their unRaid server. More information can be found here:
https://ownyourbits.com/
https://hub.docker.com/r/ownyourbits/nextcloudpi
Before hitting start, select advanced view in the top right corner, add your servers IP address e.g. 192.168.1.5 or the IP of the container if you specify a unique one.
PhotoStructure is your new home for all your photos and videos.
Cross-platform libraries that you can move seamlessly across Docker, Windows, macOS, and Linux
Fast, fun mobile-friendly UI
Support for very large (250,000+ asset) libraries
Support for almost all RAW and video formats (thanks to LibRaw and FFmpeg)
Robust metadata support, including Google Takeouts, XMP sidecars, and sibling inference
Robust image and video deduplication
PhotoStructure is extremely configurable. See the documentation for details.
Be sure to visit PhotoStructure's forum for tips, support, and to vote on what features you want to see next. We also have a discord!
To import additional directories or volumes:
click "Add another Path"
enter a Container path (like "/photos")
click Host Path and pick the directory you want to import
click "Add", then
click "Apply".
PhotoStructure will find the new directory automatically if you leave the "Where else are your photos and videos?" section set to "Automatic", which is the default.
Initial template by Spants (thanks!)
h1
emPicthor.Io photo library browser/em
/h1
p
em
The goal of this software to provide a simple, fast and lightweight tool for browsing personal photo libraries.
/em
/p
p
strongWARNING: /strongCurrently there is no authentication functionality, deploy with care.
/p
p
strongBETA: /strongThis project is in early development stage, expect bugs.
/p
Homepage: http://bpatrik.github.io/pigallery2/
This is a fast (like faster than your PC fast) directory-first photo gallery website, optimised for running on low resource servers (especially on raspberry pi).
✔️ Strenghts:
⚡ Fast, like for real
✔️ Simple. Point to your photos folder and a temp folder and you are good to go
⛔ Weakness:
😥 Its simple. Shows what you have that's it. No gallery changes (photo delete, rotate, enhance, tag, organize, etc), your gallery folder is read-only.
Live Demo @ heroku: https://pigallery2.herokuapp.com/
BasicLogin.
User: Admin
Password: Admin
A tiling image board system for people who want to save, tag, and share images, videos and webpages in an easy to skim through format. Basically self-hosted Pinterest. Project includes a chrome/firefox extension bookmarklet.
Piwigo(http://piwigo.org/) is a photo gallery software for the web that comes with powerful features to publish and manage your collection of pictures.
Plex Media Server
Enjoy your media on all your devices.
All your movie, TV Show, music, and photo collections at your fingertips, anywhere you go on all the devices you love.
Rejeto HFS Http File Server
YOU MUST ASSIGN A STATIC IP TO THE DOCKER FOR HFS3 TO WORK.
Please Read: https://raw.githubusercontent.com/bmartino1/unraid-docker-templates/refs/heads/main/Guides/Quick%20Start%20Guide%20For%20Rejeto%20HFS.txt
Access via web your files directly from your disk
You be the server! Share files fresh from your disk, with unlimited space and bandwidth.
Fast! Try zipping 100GB, downloads starts immediately!
Share even a single file with our virtual file system, even with a different name, all without touching the real file. Present things the way you want!
Watch all activities in real-time.
Control bandwidth: decide how much to give.
No intermediaries: give a huge file to your friend without waiting for it to be uploaded on a server first.
Intelligent: HFS tries to detect problems and suggest solutions.
Expandable: find the right plugin, or make you own
Easily run a web page, mange users groups and share a file thorugh your Web Browser.
Docker Compose Varient
https://github.com/bmartino1/hfs-docker
Other Environment HFS Variables
This docker image doesn't have any specific env. Every env starting with HFS_ will be passed to HFS.
Read (https://github.com/rejetto/hfs/blob/main/config.md#how-to-modify-configuration) page to learn more about how envs work.
Docker Volumes and Mounts
You can mount as many volumes as you wish in docker to persist the file storage, but keep in mind that if you want to persist HFS configurations as well you must mount a volume that points to the cwd of HFS (which you can override with HFS_CWD env).
The default hfs cwd of the container is /home/hfs/.hfs
HTTPS make certs Recommend to use admin interface...
openssl req -x509 -newkey rsa:4096 -keyout /mnt/user/appdata/hfs/certificate/privkey.key -out /mnt/user/appdata/hfs/certificate/cert.pem -days 365 -nodes
Photonix is a photo management application that streamlines the process of storing, presenting and re-discovering photos. Once set up it will ingest all the photos in your collection and start building up an image database of everything you could want to search and filter by. It makes your entire collection available to you, whichever device you’re using — as long as you can get to a web browser.
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
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
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
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
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