Boom Media
Deploy the Docs Hub — Coolify + Password

Serve your docs hub anywhere, behind a password.

Publish the html/ folder as a static site on Coolify, put it on a real domain with SSL, and lock it behind a login so only you can reach it — from any device.

← Back to Docs Hub
Step 1 · Source

1Get the hub into a Git repo

Coolify deploys from Git. Put the contents of your html/ folder into a small dedicated repo so it deploys independently of your app code.

# from inside the html/ folder
git init
git add .
git commit -m "Boom Media docs hub"
# create an empty private repo on GitHub: boom-docs
git remote add origin git@github.com:boommedia/boom-docs.git
git push -u origin main
📁 Structure matters: put index.html at the repo root, with the category folders (infrastructure/, video-media/, …) beside it — exactly as they sit now. Coolify will serve index.html as the landing page.
Step 2 · Coolify

2Create a Static Site resource

FieldSet to
New Resource →Public/Private Repository → boom-docs
Build PackStatic
Publish / Base Directory/ (repo root, where index.html is)
Port80 (nginx default for static)
Branchmain

Deploy. Coolify builds a tiny nginx container serving your files. It comes up on a *.sslip.io URL first — confirm the hub loads there.

Step 3 · Domain + SSL

3Put it on a real domain

In the resource's Domains field, set something like docs.boommedia.us. Point a DNS A record at your boom-hosting droplet (24.199.95.101). Coolify + Traefik auto-issue a Let's Encrypt certificate — you get HTTPS automatically.

Step 4 · Lock It Down

4Add password protection

Two good options. Since Cloudflare is already your plan in front of Coolify, Access is the cleaner choice — but basic auth is faster if you just want one shared password today.

Recommended

Cloudflare Access

  • Proxy docs.boommedia.us through Cloudflare (orange cloud)
  • Zero Trust → Access → Add an Application → self-hosted
  • Policy: allow only eric@boommedia.us (+ any teammates)
  • Login via email one-time code — no password to share or leak
  • Free up to 50 users; revoke access per-person anytime
Quick shared password

Traefik Basic Auth

  • Generate a hash: htpasswd -nb eric 'YourPassword'
  • In Coolify, add custom Traefik labels to the resource
  • Escape every $ as $$ in the hash
  • Browser shows a native username/password prompt
# Traefik basic-auth labels (Coolify → resource → Labels)
traefik.http.routers.docs.middlewares=docs-auth
traefik.http.middlewares.docs-auth.basicauth.users=eric:$$apr1$$…hash…
🔐 Either way, it's private by default. Don't rely on an "unlisted URL" — that's not protection. Pick one of the two above so the hub genuinely requires a login.
Step 5 · Verify

5Test from your phone

Open https://docs.boommedia.us on a device that's not logged in. You should hit the login wall, authenticate, then land on the hub. Confirm a doc in each category opens. Done — accessible anywhere, protected.

Done When

Deploy checklist