Sign inSign up

readystack/caddy

By readystack

•Updated 1 day ago

Caddy: web server and reverse proxy with HTTPS on by default. Signed; SBOM and SLSA v1 provenance.

Image
Networking
Web servers
0

6.9K

readystack/caddy repository overview

⁠Caddy

Signed: cosign SBOM: SPDX attached Provenance: SLSA v1

readystack/caddy:v2.11.7-CE-ubuntu24.04-r5

Source, recipe and records

A cosign-signed build of github.com/caddyserver/caddy v2.11.7 (Apache-2.0), built clean-room from official upstream source by ReadyStack⁠.

⁠Who uses it and why

Who: Developers and system administrators who serve websites, APIs and apps and want HTTPS without handling certificates by hand.

Why: Caddy is a web server and reverse proxy with HTTPS on by default: it gets and renews certificates for public names and runs its own local certificate authority for internal names.

Use case: A small team runs several web apps on one server. A short Caddyfile puts each app behind its own domain name as a reverse proxy; Caddy obtains and renews the certificates and redirects plain HTTP to HTTPS, so nobody copies certificate files around or tracks expiry dates.

About the upstream project, written from its own description: https://github.com/caddyserver/caddy⁠ · https://caddyserver.com/docs/⁠ · https://caddyserver.com/docs/automatic-https⁠

⁠What you get

Signature, user and attestations below were measured on the published digest sha256:8db2e7664d1e6cd8b6242b2a6190a235105a293a944b41e70399cb20a452a8b3 on 2026-10-29.

  • Scan scores — we scan every image we publish every day (an SBOM made with syft, vulnerabilities matched with grype, scored with cerodeo-v1, the rubric ce.rodeo published until 2026-10-26) and record each scan with how its score was derived. This release's first and latest scan: https://readystack.dev/products/caddy⁠
  • ReadyStack release check — passed at release on 2026-10-29: no fixable critical or high vulnerability (Docker Scout and OSV), a non-root user, SBOM and provenance attached. This is ReadyStack's own test, not a Docker grade; vulnerabilities published since then are in today's result at https://readystack.dev/queue⁠.
  • Signed — cosign signature by the ReadyStack release key (fingerprint 04daa92344a52dbc) on this release's index digest sha256:8db2e7664d1e6cd8b6242b2a6190a235105a293a944b41e70399cb20a452a8b3; verify with cosign verify --key https://readystack.dev/keys/cosign.pub readystack/caddy:v2.11.7-CE-ubuntu24.04-r5.
  • Attestations — An SPDX SBOM and SLSA v1 build provenance are attached to this digest.
  • Runs as a non-root user (caddy).
  • Built from source by ReadyStack.

⁠Which tag should I pull?

This image follows the ReadyStack release-tag convention:

  • The current release is v2.11.7-CE-ubuntu24.04-r5 — the release listed at readystack.dev. Release tags use the pattern <upstream-version>-CE-<base-os>-r<N>; the current one is signed, attested (SBOM + provenance), and is provided under the ReadyStack Agreement⁠.

  • Earlier release tags (an older version or revision in the same pattern) are superseded. They stay pullable so existing deployments can pin them, but they are no longer re-graded, and fixes appear only in newer releases: move to the current release. For a superseded release's build kit, ask support.

  • Release tags never move, so pulling the same tag again never changes the image. To be offered each new release automatically (a new revision r<N+1>, or a new upstream version), use the ReadyStack Renovate preset: https://readystack.dev/updates.html⁠

  • Any tag beginning with internal- is an engineering-pipeline artifact published for build observability. It is unsupported, may change or disappear without notice, and must not be used in production.

# ✓ current release
docker pull readystack/caddy:v2.11.7-CE-ubuntu24.04-r5

# ✗ unsupported (do not pull)
docker pull readystack/caddy:internal-...

This release is signed; verify it with cosign verify --key https://readystack.dev/keys/cosign.pub readystack/caddy:v2.11.7-CE-ubuntu24.04-r5 (the signature is recorded in the public Sigstore transparency log). Support: [email protected]⁠, as set out in the ReadyStack Agreement⁠.

⁠Deployment

Single container, single static binary, foreground process. No sidecars, no DB.

docker run -d --name caddy -p 80:80 -p 443:443 -v caddy_data:/data -v caddy_config:/config readystack/caddy:v2.11.7-CE-ubuntu24.04-r5

Starts Caddy in the foreground as PID 1, serving the shipped default Caddyfile: GET / returns a placeholder page and GET /health returns 200 OK within a second of start (this release's validation tested /health; its GET / check was not exercised — see the archive's docs/validation/FAILED_TESTS.md). Persist /data (certificates, ACME state and Caddy's local CA) and /config (Caddy's autosaved JSON) with named volumes, as in Starting it (the command packaging runs) in the handbooks, and keep -v caddy_data:/data -v caddy_config:/config on every docker run that re-creates the container — tested: with them a docker rm + fresh docker run served the same certificate; without them the re-created container got a new certificate and a new local CA. The admin API on :2019 binds to localhost INSIDE the container only (see Admin api in the handbooks) — publishing it to the host does not make it reachable from outside the container. The archive ships no Compose file.

⁠The full ReadyStack Hermetic Build Kit

The complete --network=none build kit for this image — plus admin/DB/API handbooks, the build's validation records, and its build provenance records — is a free download for any registered account at readystack.dev/products/caddy⁠. A clean-room rebuild from this release's archive on an egress-blocked host reproduced its linux/amd64 digest sha256:152fa89c297601e72fb165849aefdaad8fe18f990d47c91639b7c1379c9e760d on 2026-10-29.

— ReadyStack · readystack.dev

Tag summary

Content type

Image

Digest

sha256:8db2e7664…

Size

70.3 MB

Last updated

1 day ago

docker pull readystack/caddy:v2.11.7-CE-ubuntu24.04-r5