ArchiveBox/etc/README.md
archivebox 2fea001d36
refactor(proxy): replace caddy+lego with a single Traefik container
The https profile is now ONE container (was 3): Traefik terminates TLS and, via
its embedded go-acme/lego (~100 DNS providers), fetches + auto-renews a single
*.<domain> wildcard cert over DNS-01; no DNS provider -> Traefik's default
self-signed cert. Catch-all router -> archivebox:8000 via an inline file-provider
config (no docker socket, no extra files). Config validated against the real
traefik v3.7 binary. Comments document the one manual step (wildcard DNS A-record).

Also address review: derive BASE_URL_IS_HTTPS from the RESOLVED base url
(get_base_url(), so CSRF_TRUSTED_ORIGINS-only upgrades keep HTTPS hardening);
clarify CLOUDFLARE_API_KEY is an API Token (Bearer), not the legacy global key.
2026-06-05 04:18:41 +00:00

1.3 KiB

Example etc files for deploying ArchiveBox

In this folder are some example config files you can use for setting up ArchiveBox on your machine.

E.g. see nginx.conf for an example nginx config to serve your archive with SSL, or fly.toml for an example deployment to the Fly.io hosting platform.

For the recommended, batteries-included reverse proxy and TLS, you don't need a file here at all — it's built into the main ../docker-compose.yml as two opt-in, env-var driven profiles (no extra files, Dockerfiles, or scripts) — set the documented env vars in a .env next to ../docker-compose.yml:

  • https — a single Traefik container terminates TLS and fetches/auto-renews one *.<your-domain> wildcard cert via DNS-01 (covering unlimited snap-* subdomains, ~100 DNS providers via its embedded lego, no per-provider code), serving Traefik's default self-signed cert if no DNS provider is configured.
  • tunnel — a Cloudflare Tunnel whose tunnel/DNS are auto-provisioned from your API token, so Cloudflare's edge terminates TLS and routes *.<your-domain> through one tunnel to ArchiveBox (Host-routed) — no public IP or wildcard cert needed locally.

Please contribute your etc files here! Example contributions

  • supervisord config
  • systemd config
  • apache webserver config
  • other init system, webservers, or scheduler configs