Quickstart
Self-host Sitebin in five minutes: two DNS records, one
docker run, done. Everything durable lives in a single volume.
Requirements
- A domain, e.g.
sitebin.example.com, with two DNS records pointing at your server:
| Record | Name | Value |
|---|---|---|
| A / AAAA | sitebin.example.com | your server IP |
| A / AAAA | *.sitebin.example.com | your server IP |
- A DNS provider API token — the wildcard certificate for
*.sitebin.example.comcan only be issued via a DNS-01 challenge. Built-in single-token providers:cloudflare,hetzner,duckdns(netcupandporkbunare compiled in too, viaSITEBIN_TLS_SNIPPET). - Ports 80 + 443 reachable from the internet.
Run it
docker run -d --name sitebin \ -p 80:80 -p 443:443 -p 443:443/udp \ -v sitebin-data:/data \ -e SITEBIN_BASE_DOMAIN=sitebin.example.com \ -e SITEBIN_DNS_PROVIDER=cloudflare \ -e SITEBIN_DNS_TOKEN=<your-dns-api-token> \ -e SITEBIN_ACME_EMAIL=you@example.com \ --restart unless-stopped \ sitebin:latest
Open https://sitebin.example.com and drop files. That's the
whole setup.
Everything durable — sites, indexes, certificates — lives in the single
/data volume. Back up that path and you have backed up
everything; the container itself is disposable.
Build the image yourself
git clone https://github.com/ittrail/sitebin.io && cd sitebin docker build -t sitebin:latest .
The build runs go vet plus the full test suite; multi-arch
builds work via docker buildx build --platform linux/amd64,linux/arm64.
Compose variants
deploy/docker-compose.example.yml— a fully commented all-in-one example documenting every setting, with a ready-to-run local config (docker compose -f deploy/docker-compose.example.yml up -d→http://sitebin.localtest.me:8080/).deploy/docker-compose.yml— the multi-service shape (separate Caddy + backend, same image).
Local, or behind an existing proxy
SITEBIN_HTTP_ONLY=true disables TLS entirely — useful for
local testing (e.g. SITEBIN_BASE_DOMAIN=sitebin.localtest.me:8085
with -p 8085:80) or when an external proxy terminates TLS for
*.yourdomain in front of Sitebin.
SITEBIN_VIEW_ACCESS=path and sites are served as
sitebin.example.com/v/<id>/ paths on the main domain — a
normal single-domain certificate suffices. Trade-offs in
Using Sitebin.