guide ยท #selfhost ยท 20 min

Set Up a Reverse Proxy with Caddy (HTTPS Included)

Cech Tech Reviews

Expose your self-hosted services with proper domain names and automatic HTTPS certificates. Caddy handles everything, no manual certificate management.

difficulty: advancedabout 20 min
  1. 1

    Install Caddy

    On Docker:

    docker run -d \
      --name caddy \
      --restart unless-stopped \
      -p 80:80 -p 443:443 \
      -v ~/caddy/Caddyfile:/etc/caddy/Caddyfile \
      -v ~/caddy/data:/data \
      -v ~/caddy/config:/config \
      caddy:latest
  2. 2

    Create a Caddyfile

    Create ~/caddy/Caddyfile with your domains:

    plex.yourdomain.com {
        reverse_proxy localhost:32400
    }
    vault.yourdomain.com {
        reverse_proxy localhost:8080
    }
  3. 3

    Point your DNS to your server

    In your domain registrar or Cloudflare, create A records pointing plex.yourdomain.com and vault.yourdomain.com to your server's public IP.

  4. 4

    Caddy handles HTTPS automatically

    When a request comes in, Caddy automatically obtains and renews Let's Encrypt certificates. You never touch a certificate file. It just works.

  5. 5

    Add more services as you go

    Every new service is just 3 lines in the Caddyfile. Add it, reload Caddy (docker exec caddy caddy reload --config /etc/caddy/Caddyfile), and the new subdomain is live with HTTPS.

โ† back to all guides

More to build

all guides โ†’
Cech Tech Reviews

Honest Reviews. Real Tech. No Hype.

Some links are affiliate links. They support the site at no cost to you. As an Amazon Associate we earn from qualifying purchases.

Sister site: aideaflow.com ยท AI prompts, skills + automations

Privacy ยท Terms ยท Contact

ยฉ 2026 Cech Tech Reviews ยท Texas, USA