{"slug":"caddy","tag":"v2.11.7-CE-ubuntu24.04-r4","current":true,"account":false,"tarball":"ReadyStack-caddy-v2.11.7-CE-ubuntu24.04-r4.tar.gz","tarball_sha256":"ae903318fa2c2ecde3f9d03d1af8cfbdfc6b6b4f311d446691c5f6428a18f259","generated_at":"2026-10-29T19:31:38Z","dockerfile":"Dockerfile.offline.pinned","build_script":"BUILD_OFFLINE.sh","pins":{"upstream":{"repo":"https://github.com/caddyserver/caddy","ref":"v2.11.7","commit":"72dd0fb067f6d7826c7f79907670ba4a713bfe37","url":"https://github.com/caddyserver/caddy/tree/72dd0fb067f6d7826c7f79907670ba4a713bfe37"},"bases":[{"image":"golang:1.26.9-bookworm","digest":"sha256:d9c68c2c51161e12fd77e4c6320687c9cd86e1af1e3ad6e6cd63ff970641453c"},{"image":"ubuntu:24.04","digest":"sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c"}],"toolchain":{"buildkit":"moby/buildkit:v0.31.2","buildkit_image_digest":"sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0","builder_images":["golang:1.26.10-bookworm@sha256:632dff7351799a5a9954a48dc06670ade72ee44e8c351cdc0e5a57af2fea21af"]},"build_method":"source-rebuild-go","source_date_epoch":1791003978,"source_date_epoch_utc":"2026-10-03T05:06:18Z","target":{"image":"readystack/caddy:v2.11.7-CE-ubuntu24.04-r4","image_manifest_digest":"sha256:23e269346861a0eb7932c84a1abf48a96b06c4b929518ad66a835b1efc7ae044","config_digest":"sha256:c190cd45ed75d2b1acc48707dc79cd016bd8fb3c1c96dfb6d52e114018350f51"},"checksummed_files":6578},"files":[{"path":"BASES.tsv","size":262,"sha256":"782d1eedff2b2fb3938fced3e737a930b05e0109a48a764a88feddffc85d0f0b","public":"full","lines":2,"url":"/api/recipe/caddy/v2.11.7-CE-ubuntu24.04-r4/files/BASES.tsv","text":"golang:1.26.9-bookworm@sha256:d9c68c2c51161e12fd77e4c6320687c9cd86e1af1e3ad6e6cd63ff970641453c\tbases/golang_1.26.9-bookworm_d9c68c2c5116.oci\nubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c\tbases/ubuntu_24.04_24737cef17f4.oci\n"},{"path":"BUILD_OFFLINE.sh","size":6738,"sha256":"83299978ccd02a0b69e163d760da1211b401bbfa35a3184ca674dc37ff876732","public":"preview","lines":125,"preview":{"text":"#!/usr/bin/env bash\n# =============================================================================\n# ReadyStack — offline reproducible rebuild.\n#\n# Rebuilds this product's image from THIS ARCHIVE ALONE, with no network access\n# of any kind, and prints the resulting linux/amd64 image-manifest digest.\n# Run ./VERIFY_OFFLINE.sh afterwards to assert it equals the published digest.\n#\n# Requirements: linux/amd64 Docker host, docker buildx >= 0.30, jq, tar.\n# No git, no registry access, no additional tooling.\n#\n#   ./BUILD_OFFLINE.sh                the rebuild (OCI image + a docker-loadable copy)\n#   ./BUILD_OFFLINE.sh --provenance   the same rebuild with SLSA v1 build provenance (mode=max) attached to the OCI\n#                                     image, generated by BuildKit, not by any build step. Run on your own hardened,\n#                                     isolated build platform and sign that provenance with a key the build cannot\n#                                     reach, and the result meets SLSA Build Level 3 (see REBUILD.md). The image\n#                                     digest is the same either way.\n# =============================================================================\nset -euo pipefail\nPROVENANCE=0\nfor arg in \"$@\"; do\n  case \"$arg\" in\n    --provenance) PROVENANCE=1 ;;\n    -h|--help) sed -n '2,20p' \"$0\"; exit 0 ;;","lines_shown":24,"lines_total":125}},{"path":"CHECKSUMS.sha256","size":937956,"sha256":"8cc75149b003d7278c2622ce3d6b2aebebad670d7e8ac686c1cfbd62c309b985","public":"account","lines":6578},{"path":"Caddyfile","size":751,"sha256":"a1f8c632f6fc3ec52bb12964b2a2087d7c12f3d77826e9693f80784142e71677","public":"account","lines":21},{"path":"DOCKERFILE_NAME.txt","size":26,"sha256":"9aadd1ede68e016a6f163c97befc5ff2fcdc8ebd4f84b108dba63cb195fa8c84","public":"full","lines":1,"url":"/api/recipe/caddy/v2.11.7-CE-ubuntu24.04-r4/files/DOCKERFILE_NAME.txt","text":"Dockerfile.offline.pinned\n"},{"path":"Dockerfile","size":4328,"sha256":"e51bf3d8e248281d6bd4cfdcebfe8126f4b049dea6e59e08dbda71205e973c50","public":"account","lines":65},{"path":"Dockerfile.base","size":962,"sha256":"4e3efc63bd8f6b3a1653fef05d2a03d7137b034117c8488185bcffd716dd8426","public":"account","lines":16},{"path":"Dockerfile.offline","size":3986,"sha256":"8df6c9a5b3e312acef1cfc032067d68584059e5b98c3b04580edd9b600837ae2","public":"account","lines":56},{"path":"Dockerfile.offline.pinned","size":4630,"sha256":"7be0fbc0f820ec1cd2ab82f9479bab6a1f8ef1679cec4fb6794757430e4577ea","public":"preview","lines":65,"preview":{"text":"# =====================================================================\n# L-009 HERMETIC OFFLINE BUILD (canonical, attestation-producing).\n# Built by `docker buildx build --builder readystack-builder-max\n#   --network=none --attest type=provenance,mode=max --attest type=sbom\n#   --push <git-context>` — the command that CREATES the DockerHub image\n# WITH SBOM + SLSA-max provenance attestations (Scout 20-pt policy).\n#\n# Pinned-public-base + vendored-.deb model: the container builder cannot\n# see host-built images, so everything is vendored —\n#   - golang + ubuntu pinned BY DIGEST (buildkit pulls; RUN steps are\n#     --network=none hermetic)\n#   - vendored/caddy-src : fully-vendored Go module tree (GOPROXY=off)\n#   - vendored/debs      : apt CVE-upgrade closure + runtime packages,\n#                          installed offline via dpkg (no apt network)\n# =====================================================================\nFROM golang:1.26.9-bookworm@sha256:d9c68c2c51161e12fd77e4c6320687c9cd86e1af1e3ad6e6cd63ff970641453c AS build\nWORKDIR /src\nCOPY vendored/caddy-src/ .\nENV CGO_ENABLED=0 GOTOOLCHAIN=local GOFLAGS=\"-mod=vendor -buildvcs=false\" GOPROXY=off\nRUN go build -trimpath -ldflags='-s -w' -o /caddy .\nRUN /caddy version | tee /tmp/caddy.version && grep -Eq '^v2\\.11\\.7( |$)' /tmp/caddy.version || \\\n    { echo \"built caddy does not report v2.11.7\" >&2; exit 1; }\n\nFROM ubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c","lines_shown":24,"lines_total":65}},{"path":"Dockerfile.vendor","size":3468,"sha256":"70e4d9aa10b73598f42cdbc0eddad0eb7f331009bcec50725001a90d4501fe9c","public":"account","lines":56},{"path":"MANIFEST.txt","size":490682,"sha256":"703b848bbea91bf763ca8cc52d92f72174c3b2ef0cc52bace44551469b491f2b","public":"account","lines":6580},{"path":"README.md","size":2959,"sha256":"4eec16c7fea101c97a27a85e0c5d9e001379740d6ed72b4086ccb2de8e7a29a1","public":"account","lines":60},{"path":"SOURCE_DATE_EPOCH.txt","size":11,"sha256":"333b1e8172236d3d4bc5c208cba70a6aa35a953def6a1a8273fa9a4b87d74079","public":"full","lines":1,"url":"/api/recipe/caddy/v2.11.7-CE-ubuntu24.04-r4/files/SOURCE_DATE_EPOCH.txt","text":"1791003978\n"},{"path":"TARGET_DIGEST.txt","size":278,"sha256":"d412e2118dbaf5bb0f038ae57c6191326db5ec5c0618258e1f059c7f6e45a50e","public":"full","lines":6,"url":"/api/recipe/caddy/v2.11.7-CE-ubuntu24.04-r4/files/TARGET_DIGEST.txt","text":"image_manifest_digest=sha256:23e269346861a0eb7932c84a1abf48a96b06c4b929518ad66a835b1efc7ae044\nconfig_digest=sha256:c190cd45ed75d2b1acc48707dc79cd016bd8fb3c1c96dfb6d52e114018350f51\ntag=readystack/caddy:v2.11.7-CE-ubuntu24.04-r4\nprobe_port=80\nprobe_path=/health\nprobe_timeout=180\n"},{"path":"VERIFY_OFFLINE.sh","size":7331,"sha256":"8b036b1f9a7f7deb4dbab14ef6b7c40622d2820904e891b8845ba3580e924506","public":"account","lines":128},{"path":"docs/PROVENANCE.md","size":1767,"sha256":"c8077b140d19c47b43467543f400228eaacd2d8c7618264c704684551ade0b89","public":"account","lines":28},{"path":"docs/REBUILD.md","size":5131,"sha256":"e931ab195f15db65ead152619b6520365d5e6d4ed652687a4bb53e01e663dc3f","public":"account","lines":57},{"path":"docs/VERIFY.md","size":1951,"sha256":"457566b0d5e92e7db83c33c425d089108de1ea8a7b702fc77831b11de4d26a49","public":"account","lines":34},{"path":"docs/provenance/BASE_IMAGE_DIGESTS.lock","size":71,"sha256":"0dcbe2e588a47dd50306c5b3e04b8bc8cf361c046af986ca4deedfdca724693c","public":"full","lines":2,"url":"/api/recipe/caddy/v2.11.7-CE-ubuntu24.04-r4/files/docs/provenance/BASE_IMAGE_DIGESTS.lock","text":"# base images for caddy (resolve at build_kit)\ngolang:1.26.10-bookworm\n"},{"path":"docs/provenance/BUILD_RECIPE.json","size":1329,"sha256":"8029029cec873c8d46f396899719aee9f4c24dd4f0fb7855f0e21e4a5ef70321","public":"account","lines":31},{"path":"docs/provenance/CUSTODY_INPUTS.json","size":648,"sha256":"c69d95f3ab0732da1340a3b682324cfbd972b9506437cc44ee8cc02fe94ccadc","public":"account","lines":17},{"path":"docs/provenance/SOURCE_FILE_MANIFEST.json","size":40909,"sha256":"d02c68eb0674209a0f3a7a66f1e554b3d5e85b2a3e0577d275b7386c7a771714","public":"account","lines":697},{"path":"docs/provenance/SOURCE_TREE_HASH.json","size":305,"sha256":"e594c82ef6e2adeedcf51a570c11f83a71295b2645cd49454f199f225a24f194","public":"full","lines":9,"url":"/api/recipe/caddy/v2.11.7-CE-ubuntu24.04-r4/files/docs/provenance/SOURCE_TREE_HASH.json","text":"{\n  \"schema\": \"kitforge.source_tree_hash.v1\",\n  \"slug\": \"caddy\",\n  \"repo\": \"https://github.com/caddyserver/caddy\",\n  \"ref\": \"v2.11.7\",\n  \"commit\": \"72dd0fb067f6d7826c7f79907670ba4a713bfe37\",\n  \"tree_listing_sha256\": \"aab34768daea5291b0df53eb3d1a5f99cd069a1c6a487c223e049ce53ae6baf9\",\n  \"file_count\": 690\n}"},{"path":"docs/provenance/SYSTEM_PINNING.lock","size":40,"sha256":"d9e8e7dec1288b76924f19ddf5b6d4ea56dfd43170ac136f6f9d97e569398b3c","public":"account","lines":4},{"path":"docs/provenance/TOOLCHAIN.lock","size":4424,"sha256":"1089eaa7f2f49869408f20a5273edc0eb9bc0ec9881743157f5ead6417841eb6","public":"account","lines":77},{"path":"main.go","size":754,"sha256":"810c778bc7ba47560ebdbc8ebc440ac3b9784c62a32024aae42dc0622edd0da7","public":"account","lines":20},{"path":"offline-kit.sh","size":1270,"sha256":"b1da87b31928c7dc686e3a618c6dc54847555decdca4413fa836145019f88799","public":"account","lines":27},{"path":"rebuild.json","size":1431,"sha256":"6323ff14f35946aff7becbfef9d2fbaaa3837721d78f8b969fb011a4f406e855","public":"account","lines":38},{"path":"toolchain/BUILDKIT_TAG.txt","size":22,"sha256":"fcd530eeb02b063d2f047adad6eef896422a8e8d558513e5f09b2a262be32573","public":"full","lines":1,"url":"/api/recipe/caddy/v2.11.7-CE-ubuntu24.04-r4/files/toolchain/BUILDKIT_TAG.txt","text":"moby/buildkit:v0.31.2\n"}],"skipped":[],"kit_adds":{"bases":{"files":16,"bytes":328815448},"docs":{"files":746,"bytes":7721085},"toolchain":{"files":1,"bytes":111529472},"vendored":{"files":5788,"bytes":56801375}},"links":{"page":"https://readystack.dev/products/caddy/recipe","signup":"https://readystack.dev/login.html?create=1&next=%2Fproducts%2Fcaddy%2Frecipe","kit":"https://readystack.dev/buy.html?product=caddy"}}