Self-Hosted Stack Builder

Docker Compose Generator v2 Generator v2

Select the self-hosted apps you want to include in your stack. Configure environment permissions, map volume data storage, and copy your compiled compose configuration instantly.

3 Services Selected
Plex
Radarr
qBittorrent
Plex

Plex

Media

Organize and stream your personal movies, TV shows, music, and photos to any device, anywhere.

StreamingMedia Server
Jellyfin

Jellyfin

Media

The volunteer-built media solution that puts you in control of managing and streaming your media.

Open SourceMedia Server
Sonarr

Sonarr

Media

Smart TV show PVR which monitors multiple RSS feeds for new episodes and imports them automatically.

TV ShowsPVR
Radarr

Radarr

Media

Movie PVR tool similar to Sonarr. Automatically monitors, downloads, and processes movie releases.

MoviesPVR
Lidarr

Lidarr

Media

Music collection manager for Usenet and BitTorrent users. Automates artist discography downloads.

MusicPVR
Readarr

Readarr

Media

Book and audiobook collection manager for Usenet and BitTorrent. Automates e-book library building.

BooksAudiobooks
Prowlarr

Prowlarr

Media

Indexer manager and proxy built to integrate with Sonarr, Radarr, Lidarr, and Readarr.

IndexerUsenet
qBittorrent

qBittorrent

Downloads

An open-source, lightweight alternative to uTorrent with a responsive, built-in Web User Interface.

BitTorrentClient
Transmission

Transmission

Downloads

A fast, lightweight, and extremely simple BitTorrent client with dynamic directory mappings.

BitTorrentLightweight
SABnzbd

SABnzbd

Downloads

A free and open-source binary newsreader that automates downloading from Usenet servers.

UsenetDownloader
Home Assistant

Home Assistant

Automation

Open-source home automation hub that puts local control and privacy first. Integrates 1000+ devices.

IoTSmart Home
Node-RED

Node-RED

Automation

Low-code visual programming tool for wiring together hardware devices, APIs, and online services.

Visual ProgrammingIoT
Pi-hole

Pi-hole

Networking

Network-wide protection that blocks ads, trackers, and malicious domains before they even download.

DNSAd Blocker
Portainer

Portainer

Networking

Universal container management platform that allows you to manage Docker stacks via an intuitive GUI.

Docker GUIAdmin
Vaultwarden

Vaultwarden

Storage

Lightweight Bitwarden-compatible password vault server compiled in Rust. Minimal CPU & memory overhead.

PasswordsSecurity
Nextcloud

Nextcloud

Storage

Self-hosted file sharing, productivity platform, and cloud suite. Secure replacement for Google Drive.

Cloud StorageProductivity
WordPress

WordPress

Web

The world's most popular website builder and blogging platform. Requires a relational database like MySQL or MariaDB.

CMSBlog
Redis

Redis

Database

In-memory data structure store used as a database, cache, message broker, and streaming engine.

NoSQLCache
MySQL

MySQL

Database

The world's most popular open-source relational database management system. Commonly paired with WordPress.

DatabaseSQL
MongoDB

MongoDB

Database

A document-based, distributed database designed for modern application developers and the cloud era.

DatabaseNoSQL
Ubuntu

Ubuntu

Development

Base Ubuntu image. Configured with tty enabled to keep the container running for shell access.

OSLinux
Alpine Linux

Alpine Linux

Development

Ultra-lightweight Linux distribution base container (~5MB). Runs with tty enabled to prevent immediate exit.

OSLinux
VS Code (code-server)

VS Code (code-server)

Development

VS Code running in a container, accessible via a web browser. Includes a built-in terminal and extension support.

IDEEditor
Emby

Emby

Media

Organize, play, and stream audio and video to a variety of devices.

StreamingMedia Server
Navidrome

Navidrome

Media

Modern, fast, web-based music server and streamer. Compatible with all Subsonic clients.

Music ServerStreaming
Audiobookshelf

Audiobookshelf

Media

Self-hosted audiobook and podcast server. Features multi-user support, sync progress, and web/mobile apps.

AudiobooksPodcasts
Overseerr

Overseerr

Media

Request management and media discovery tool built to work with Plex, Sonarr, and Radarr.

Request ManagementPlex Integration
Tautulli

Tautulli

Media

Monitoring and tracking tool for Plex Media Server. Provides rich stats and notify triggers.

MonitoringPlex Stats
Bazarr

Bazarr

Media

Companion application to Sonarr and Radarr. Automatically manages and downloads subtitles.

SubtitlesAutomation
Calibre-Web

Calibre-Web

Media

Web interface for browsing, reading, and downloading eBooks stored in a Calibre database.

EbooksLibrary
Kavita

Kavita

Media

Fast, feature-rich manga, comic, and book reader server with native web interface support.

MangaEbooks
Komga

Komga

Media

Free and open-source media server for your comics, mangas, BDs, and eBooks.

ComicsManga
Jellyseerr

Jellyseerr

Media

A fork of Overseerr focusing on Jellyfin and Emby media server integrations.

Request ManagementJellyfin
Deluge

Deluge

Downloads

Lightweight, open-source BitTorrent client featuring Web UI, daemon, and rich plugin ecosystem.

BitTorrentClient
nzbGet

nzbGet

Downloads

High-performance C++ Usenet newsgrabber with a clean web interface and low system overhead.

UsenetDownloader
ruTorrent

ruTorrent

Downloads

Popular web frontend for the high-performance rTorrent client. Highly extensible with plugins.

BitTorrentrTorrent
aria2

aria2

Downloads

Lightweight multi-protocol & multi-source command-line download utility (HTTP/HTTPS, FTP, SFTP, BitTorrent).

DownloaderMulti-protocol
JDownloader 2

JDownloader 2

Downloads

Free, open-source download management tool that simplifies downloading files from hosters/sites.

Download ManagerLink Grabber
pyLoad

pyLoad

Downloads

Free and open-source Download Manager written in Python and designed to run on low-end servers.

DownloaderPython
AppDaemon

AppDaemon

Automation

Python daemon for writing Home Assistant automations. Runs separate from the core process.

PythonHome Assistant
Zigbee2MQTT

Zigbee2MQTT

Automation

Bridge Zigbee devices to MQTT. Allows using Zigbee devices without proprietary bridges.

ZigbeeMQTT
Mosquitto

Mosquitto

Automation

Lightweight message broker that implements the MQTT protocol. Essential for smart-home setups.

MQTTBroker
TasmoAdmin

TasmoAdmin

Automation

Web application for managing devices flashed with Tasmota. Supports bulk updates and backups.

TasmotaSmart Home
Homebridge

Homebridge

Automation

Lightweight NodeJS server that emulates the iOS HomeKit API. Integrates non-HomeKit devices.

Apple HomeKitIoT
Gladys Assistant

Gladys Assistant

Automation

Privacy-first smart home assistant that runs on your local network. Clean and user-friendly interface.

Smart HomeAssistant
ioBroker

ioBroker

Automation

Integration platform for the Internet of Things, focused on home automation and cross-device links.

Smart HomeIoT
AdGuard Home

AdGuard Home

Networking

Network-wide software for blocking ads & tracking. Runs as a DNS server redirecting tracking domains.

DNSAd Blocker
Nginx Proxy Manager

Nginx Proxy Manager

Networking

Manage Nginx reverse proxy hosts, SSL certs, and access lists easily through a web interface.

Reverse ProxyNginx
Traefik

Traefik

Networking

Cloud-native reverse proxy and load balancer. Integrates with Docker labels to auto-configure routes.

Reverse ProxyEdge Router
WireGuard

WireGuard

Networking

Extremely simple yet fast and modern VPN server using state-of-the-art cryptography.

VPNSecure Tunnel
Tailscale

Tailscale

Networking

Zero-config mesh VPN that creates secure direct links between all your self-hosted machines.

VPNMesh Network
Fail2ban

Fail2ban

Networking

Scans log files for malicious activity and updates local firewall rules to block IPs.

SecurityFirewall
Authelia

Authelia

Networking

Single Sign-On and Two-Factor Authentication portal protecting your reverse proxied applications.

SSOAuthentication
CrowdSec

CrowdSec

Networking

Collaborative security engine that detects malicious behaviors and blocks access using community-driven data.

SecurityIPS
DuckDNS

DuckDNS

Networking

Free dynamic DNS service that automatically updates a public domain with your server's public IP.

DDNSDNS
Syncthing

Syncthing

Storage

Continuous file synchronization program. Synchronizes files between two or more computers in real time.

SynchronizationP2P
ownCloud

ownCloud

Storage

Open-source file sync and share server. Secure alternative to Dropbox or Google Drive.

Cloud StorageFile Sharing
MinIO

MinIO

Storage

High-performance, S3 compatible object storage. Ideal for cloud-native apps and distributed backups.

S3 StorageObject Storage
Duplicati

Duplicati

Storage

Free backup client that securely stores encrypted, incremental, compressed backups on cloud services.

BackupEncryption
FileRun

FileRun

Storage

Self-hosted Google Drive alternative. Fast file manager with WebDAV access and photo gallery support.

File ManagerCloud Sharing
File Browser

File Browser

Storage

Web-based file manager interface. Allows browsing, uploading, deleting, and editing local directory structures.

File ManagerWeb UI
Picoshare

Picoshare

Storage

Minimalist, self-hosted service for sharing files easily with direct links and no file size limits.

File SharingSharing
Samba (SMB)

Samba (SMB)

Storage

Shares directories on your local network using the SMB protocol. Fully compatible with Windows, macOS, and Linux.

SMBFile Share
PostgreSQL

PostgreSQL

Database

Advanced open-source relational database. Highly robust, extensible, and widely used by self-hosted backend apps.

DatabaseSQL
MariaDB

MariaDB

Database

Relational database management system developed by the original developers of MySQL. High speed and compatibility.

DatabaseSQL
InfluxDB

InfluxDB

Database

Time series database optimized for high-availability database metrics, IoT sensor data, and real-time analytics.

Time SeriesDatabase
Prometheus

Prometheus

Database

Systems monitoring and alerting toolkit database. Collects metrics via pull model scraping.

MetricsTime Series
Elasticsearch

Elasticsearch

Database

Distributed search and analytics database engine. Built on Apache Lucene for full-text search capability.

Search EngineNoSQL
Meilisearch

Meilisearch

Database

Lightning-fast, open-source, typo-tolerant search engine built in Rust. Perfect search experience for any frontend app.

Search EngineRust
PocketBase

PocketBase

Database

Open-source Go backend in 1 file. SQLite database, realtime subscriptions, auth, and admin dashboard.

GoSQLite
Gitea

Gitea

Development

Painless self-hosted Git service. Lightweight Git repository server with code reviews, issues, and wikis.

Git ServerCode Hosting
Jenkins

Jenkins

Development

The leading open-source automation server. Provides hundreds of plugins to support building and deploying projects.

CI/CDAutomation Server
Portainer Agent

Portainer Agent

Development

Agent used to connect remote Docker environments to a centralized Portainer dashboard server.

Docker AgentManagement
Uptime Kuma

Uptime Kuma

Development

Self-hosted monitoring tool for websites, servers, and APIs. Features responsive dashboard and notifications.

MonitoringStatus Page
Grafana

Grafana

Development

Query, visualize, alert on, and understand metrics from databases like Prometheus and InfluxDB.

DashboardsMetrics
Netdata

Netdata

Development

Real-time health monitoring and performance troubleshooting for physical/virtual servers and containers.

MonitoringReal-time Metrics
Glances

Glances

Development

Cross-platform system monitoring tool. Provides dashboard showing CPU, memory, load, disks, network, and processes.

System StatsMonitoring
Speedtest Tracker

Speedtest Tracker

Development

Self-hosted internet speedtest tracker. Automatically runs speedtests and displays history charts.

SpeedtestMonitoring
CyberChef

CyberChef

Development

The Cyber Swiss Army Knife. A web app for encryption, decryption, encoding, compression, and analysis.

CryptographyData Conversion
Heimdall

Heimdall

Development

Elegant application dashboard and portal. Create shortcut links to all your self-hosted web applications.

DashboardHome Lab Portal
Ollama

Ollama

AI

Run large language models (like Llama 3, Mistral, and Qwen) locally on CPU or GPU.

LLMAI
Open WebUI

Open WebUI

AI

User-friendly, feature-rich web interface for Ollama and OpenAI-compatible LLMs.

UILLM
LocalAI

LocalAI

AI

Drop-in self-hosted OpenAI-compatible API replacement. Runs LLMs, audio transcription, and image generation locally.

APIOpenAI
Flowise

Flowise

AI

Drag-and-drop UI to build customized LLM flows, chatbots, memory buffers, and autonomous AI agents.

OrchestrationVisual Programming
Langflow

Langflow

AI

Visual framework to prototype and build RAG pipelines, multi-agent systems, and AI workflows using Python.

Visual IDERAG
LibreChat

LibreChat

AI

Open-source web UI supporting Ollama, OpenAI, Anthropic, Gemini, and custom API endpoints with user management.

UIChat
Memcached

Memcached

Database

Free & open source, high-performance, distributed memory object caching system.

CacheKey-Value
Nginx

Nginx

Web

Official build of Nginx. High performance web server, reverse proxy, and load balancer.

Web ServerReverse Proxy
BusyBox

BusyBox

Development

BusyBox base image combining tiny versions of many common UNIX utilities into a single small executable.

Base ImageOS
Python

Python

Development

Python is an interpreted, interactive, object-oriented, open-source programming language.

CompilerRuntime
Node.js

Node.js

Development

Node.js is a JavaScript-based platform for server-side and networking applications.

RuntimeJavaScript
Apache HTTP Server

Apache HTTP Server

Web

The Apache HTTP Server Project (httpd) is an open-source HTTP server for modern operating systems.

Web ServerHTTP
RabbitMQ

RabbitMQ

Database

RabbitMQ is an open source multi-protocol messaging broker with full AMQP support.

Message QueueAMQP
Docker (DinD)

Docker (DinD)

Development

Docker in Docker (commonly known as dind) allows you to run a Docker daemon inside a container.

ContainerizationDocker
Hello World

Hello World

Development

Hello World! An example of minimal Dockerization to verify your docker daemon runs.

DockerTest
OpenJDK

OpenJDK

Development

Pre-release / non-production builds of OpenJDK. Open-source implementation of the Java Platform.

JavaJDK
Go (golang)

Go (golang)

Development

Go (golang) is a general purpose, higher-level, imperative programming language.

GoCompiler
Docker Registry

Docker Registry

Networking

Distribution implementation for storing and distributing of container images and artifacts.

RegistryImages
Debian

Debian

Development

Debian is a Linux distribution that's composed entirely of free and open-source software.

OSLinux
Ruby

Ruby

Development

Ruby is a dynamic, reflective, object-oriented, general-purpose, open-source programming language.

RuntimeRuby
PHP

PHP

Development

While designed for web development, the PHP scripting language also provides general-purpose use.

RuntimePHP
SonarQube

SonarQube

Development

Official images for SonarQube, code analysis tool for code quality and security.

Code AnalysisSecurity
CentOS

CentOS

Development

CentOS is a community-supported distribution derived from the sources of Red Hat Enterprise Linux (RHEL).

OSLinux
HAProxy

HAProxy

Networking

HAProxy - The Reliable, High Performance TCP/HTTP Load Balancer.

Load BalancerReverse Proxy
Consul

Consul

Networking

Consul is a datacenter runtime that provides service discovery, configuration, and orchestration.

Service DiscoveryDNS
Amazon Linux

Amazon Linux

Development

Amazon Linux provides a stable, secure, and high-performance execution environment for applications.

OSLinux
Apache Tomcat

Apache Tomcat

Web

Apache Tomcat is an open source implementation of the Java Servlet and JavaServer Pages technologies.

JavaWeb Server
Apache Maven

Apache Maven

Development

Apache Maven is a software project management and comprehension tool, primarily for Java.

Build ToolJava
Caddy Server

Caddy Server

Networking

Caddy 2 is a powerful, enterprise-ready, open source web server with automatic HTTPS written in Go.

Web ServerReverse Proxy
Eclipse Mosquitto

Eclipse Mosquitto

Networking

Eclipse Mosquitto is an open source message broker which implements MQTT version 5, 3.1.1 and 3.1.

MQTTIoT
Telegraf

Telegraf

Networking

Telegraf is an agent for collecting metrics and writing them to InfluxDB or other outputs.

MetricsAgent
Bash

Bash

Development

Bash is the GNU Project's Bourne Again SHell, running as a minimal environment.

ShellOS
Vault

Vault

Networking

Vault is a tool for securely accessing secrets via a unified interface and tight access control.

SecuritySecrets

Stack Customization & Live Preview

Customize environments, volumes, and ports for each selected container. The docker-compose and environment variables update below in real-time.

Global Stack Config

# -----------------------------------------------------
# Docker Compose Stack V2 (Self-Hosted Apps)
# Generated by HYVO Compiler Suite
# -----------------------------------------------------

services:
  # Plex: Organize and stream your personal movies, TV shows, music, and photos to any device, anywhere.
  plex:
    image: lscr.io/linuxserver/plex:latest
    container_name: ${CONTAINER_PREFIX}-plex
    ports:
      - "32400:32400"
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
      - VERSION=docker
    volumes:
      - ${CONFIG_PATH}/plex:/config
      - ${MEDIA_PATH}/movies:/movies
      - ${MEDIA_PATH}/tv:/tv
    restart: ${RESTART_POLICY}

  # Radarr: Movie PVR tool similar to Sonarr.
  radarr:
    image: Radarr
    container_name: ${CONTAINER_PREFIX}-radarr
    ports:
      - "7878:7878"
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
    volumes:
      - ${CONFIG_PATH}/radarr:/config
      - ${MEDIA_PATH}/movies:/movies
      - ${MEDIA_PATH}/downloads:/downloads
    restart: ${RESTART_POLICY}

  # qBittorrent: An open-source, lightweight alternative to uTorrent with a responsive, built-in Web User Interface.
  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: ${CONTAINER_PREFIX}-qbittorrent
    ports:
      - "8080:8080"
      - "6881:6881"
      - "6881:6881/udp"
    environment:
      - PUID=${PUID}
      - PGID=${PGID}
      - TZ=${TZ}
      - WEBUI_PORT=8080
    volumes:
      - ${CONFIG_PATH}/qbittorrent:/config
      - ${MEDIA_PATH}/downloads:/downloads
    restart: ${RESTART_POLICY}

Simplifying Home-Lab Self-Hosting with Docker

Self-hosting application suites like media servers (Plex, Jellyfin), automation nodes (Home Assistant, Node-RED), and database instances (PostgreSQL, Redis, MySQL) on local servers is incredibly popular. However, manually configuring individual Docker containers leads to network conflicts, storage mapping typos, and system permission bugs. Our Docker Compose Generator v2 automates these configurations. By setting up shared virtual bridge networks, defining standard directory parameters, and separating local configurations from template YAML, you can spin up a unified personal cloud stack with a single `docker compose up -d` command.

Why PUID and PGID Are Crucial

When using LinuxServer-based Docker images, you must specify the User ID (`PUID`) and Group ID (`PGID`) environment variables. By matching these variables to your host user credentials (run `id` in your terminal to find them, usually `1000`), you prevent Docker from assigning `root` user ownership to mounted filesystem paths. This prevents database access locks and allows you to read/write config directories from your host machine.

The Power of Shared .env Configurations

Instead of hardcoding system paths or permission IDs across separate services, we extract them into a centralized `.env` configuration file. By declaring variables like `CONFIG_PATH=/home/user/docker/config` in a local `.env`, your compose stack references them dynamically. This makes it simple to move your home lab stack to a new machine—just update the `.env` parameters without editing a single line of YAML code.

Frequently Asked Questions

What is variable interpolation?

Interpolation resolves variables dynamically. In Docker, variables like `${PUID}` fetch values from your `.env` file at runtime. Our tool includes an 'Interpolation Toggle' so you can copy raw templates or download ready-to-run YAML files with variables hardcoded.

How do I start the compiled docker-compose file?

1. Save the generated stack exactly as `docker-compose.yml` and the environment file as `.env` in the same directory. 2. Open your terminal inside that directory and run: `docker compose up -d`.

Why are PUID and PGID important in self-hosting?

Specifying PUID and PGID ensures that local files created by the containers are owned by your host user instead of root. This prevents file permission locks and allows you to easily edit configuration files.

How do I manage directory paths programmatically?

Centralizing your variables in a `.env` file enables you to reference directories like CONFIG_PATH or MEDIA_PATH dynamically. If you migrate to a new server, you only have to update the `.env` settings.

Build and scale with HYVO

Eliminate home-lab configuration bugs. Package your self-hosted apps into a clean, modern Docker Compose stack in clicks.