Homelab Essentials
Intermediate5 apps

Homelab Essentials

Everything you need for a powerful home server

Overview

The ultimate homelab starter pack. Portainer for Docker management, Uptime Kuma for monitoring, Pi-hole for network-wide ad blocking, Nextcloud for file storage, and Nginx Proxy Manager for routing everything through a single IP with SSL.

Included Applications (5)

P

Portainer

31.0k

Making Docker and Kubernetes management easy. A universal container management platform.

GoZlib
U

Uptime Kuma

59.0k

A fancy self-hosted monitoring tool. An alternative to services like Uptime Robot with a beautiful interface.

JavaScriptMIT
P

Pi-hole

49.0k

A black hole for Internet advertisements. Network-wide ad blocking via your own Linux hardware.

ShellEUPL-1.2
N

Nextcloud

27.0k

The self-hosted productivity platform that keeps you in control. A complete on-premises content collaboration platform.

PHPAGPL-3.0
N

Nginx Proxy Manager

23.0k

Expose your services easily and securely with a beautiful management interface for Nginx reverse proxy.

JavaScriptMIT

Docker Compose

version: '3.8'
services:
  portainer:
    image: portainer/portainer-ce:latest
    ports:
      - "9443:9443"
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - portainer_data:/data
    restart: always

  uptime-kuma:
    image: louislam/uptime-kuma:1
    ports:
      - "3001:3001"
    volumes:
      - uptime_data:/app/data
    restart: always

  pihole:
    image: pihole/pihole:latest
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "8888:80"
    environment:
      WEBPASSWORD: your_password
    volumes:
      - pihole_data:/etc/pihole
    restart: always

  nextcloud:
    image: nextcloud:latest
    ports:
      - "8082:80"
    volumes:
      - nextcloud_data:/var/www/html
    restart: always

  nginx-proxy:
    image: jc21/nginx-proxy-manager:latest
    ports:
      - "80:80"
      - "443:443"
      - "81:81"
    volumes:
      - npm_data:/data
    restart: always

volumes:
  portainer_data:
  uptime_data:
  pihole_data:
  nextcloud_data:
  npm_data:

Setup Guide

1

Prepare a Linux server (Ubuntu/Debian recommended)

2

Install Docker and Docker Compose

3

Clone the docker-compose.yml file

4

Configure Pi-hole web password and DNS settings

5

Start everything with docker-compose up -d

6

Access Portainer (9443) to manage all containers

7

Set up Nginx Proxy Manager (81) for SSL and routing