{"slug":"grafana","tag":"v13.2.4-CE-ubuntu24.04-r2","current":true,"account":false,"tarball":"ReadyStack-grafana-v13.2.4-CE-ubuntu24.04-r2.tar.gz","tarball_sha256":"ab2cba3ac7a666ed01f63011112f51a054f23323d74411333a40ca959fb4e22a","generated_at":"2026-10-29T19:36:08Z","dockerfile":"Dockerfile.offline.pinned","build_script":"BUILD_OFFLINE.sh","pins":{"upstream":{"repo":"https://github.com/grafana/grafana","ref":"v13.2.4","commit":"af4a33e3786594ad72f72d97e6744010330c2977","url":"https://github.com/grafana/grafana/tree/af4a33e3786594ad72f72d97e6744010330c2977"},"fetches":[{"kind":"git","url":"https://github.com/grafana/grafana","ref":"v13.2.4"},{"kind":"http","url":"https://deb.nodesource.com/setup_24.x"}],"bases":[{"image":"golang:1.26.10-bookworm","digest":"sha256:632dff7351799a5a9954a48dc06670ade72ee44e8c351cdc0e5a57af2fea21af"},{"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":1791891415,"source_date_epoch_utc":"2026-10-13T11:36:55Z","target":{"image":"readystack/grafana:v13.2.4-CE-ubuntu24.04-r2","image_manifest_digest":"sha256:c45e7a2d37439c2045583444b0b6e9c40cb2cdb900b111f4d578f411b229fecd","config_digest":"sha256:7405cb24bc4e4f48d8bc0448d9629c47fca4ea16a4ffe6042dbe031da864da00"},"checksummed_files":88740},"files":[{"path":"BASES.tsv","size":264,"sha256":"8d72027e2bc448d0c7ff3a900bfe648f1e4c9ec92a2beaa3f623ccffc48641b5","public":"full","lines":2,"url":"/api/recipe/grafana/v13.2.4-CE-ubuntu24.04-r2/files/BASES.tsv","text":"golang:1.26.10-bookworm@sha256:632dff7351799a5a9954a48dc06670ade72ee44e8c351cdc0e5a57af2fea21af\tbases/golang_1.26.10-bookworm_632dff735179.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":14003676,"sha256":"4fdf91c4ffe758425792067a05276de5f7d15214982fb20fc570631e69ddfca2","public":"account","lines":88740},{"path":"DOCKERFILE_NAME.txt","size":26,"sha256":"9aadd1ede68e016a6f163c97befc5ff2fcdc8ebd4f84b108dba63cb195fa8c84","public":"full","lines":1,"url":"/api/recipe/grafana/v13.2.4-CE-ubuntu24.04-r2/files/DOCKERFILE_NAME.txt","text":"Dockerfile.offline.pinned\n"},{"path":"Dockerfile","size":4947,"sha256":"eed5b7643849b88716d84a348d0118d5ac8d0b3d20570fffc0e2084d88d5367a","public":"account","lines":40},{"path":"Dockerfile.offline","size":4947,"sha256":"eed5b7643849b88716d84a348d0118d5ac8d0b3d20570fffc0e2084d88d5367a","public":"account","lines":40},{"path":"Dockerfile.offline.pinned","size":4947,"sha256":"eed5b7643849b88716d84a348d0118d5ac8d0b3d20570fffc0e2084d88d5367a","public":"preview","lines":40,"preview":{"text":"# GENERATED L-009 hermetic build (--network=none, SBOM+SLSA-attestation-producing).\n# Pinned bases from BASE_IMAGE_DIGESTS.lock; vendored Go tree + debs from Dockerfile.vendor.\nFROM golang:1.26.10-bookworm@sha256:632dff7351799a5a9954a48dc06670ade72ee44e8c351cdc0e5a57af2fea21af AS build_grafana\nWORKDIR /src\nCOPY vendored/grafana-src/ .\nENV CGO_ENABLED=0 GOTOOLCHAIN=local GOWORK=off GOFLAGS=\"-mod=vendor -buildvcs=false\" GOPROXY=off SOURCE_DATE_EPOCH=1791891415\nRUN go build -trimpath -ldflags='-s -w -X main.version=13.2.4' -o /grafana ./pkg/cmd/grafana && /grafana --version\nFROM ubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c\nENV DEBIAN_FRONTEND=noninteractive GF_PATHS_HOME=/usr/share/grafana GF_PATHS_DATA=/var/lib/grafana GF_PATHS_LOGS=/var/log/grafana GF_PATHS_PLUGINS=/var/lib/grafana/plugins GF_PATHS_PROVISIONING=/etc/grafana/provisioning PATH=/usr/share/grafana/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\nRUN --mount=type=bind,source=vendored/debs,target=/tmp/debs \\\n    set --; for f in /tmp/debs/*.deb; do [ -e \"$f\" ] && set -- \"$@\" \"$f\"; done; \\\n    for pass in 1 2 3 4 5; do [ $# -eq 0 ] || dpkg -i --skip-same-version \"$@\" >/dev/null 2>&1 && break; done; \\\n    dpkg --configure -a && bad= && for d in \"$@\"; do p=$(dpkg-deb -f \"$d\" Package) v=$(dpkg-deb -f \"$d\" Version); \\\n      case \"$(dpkg-query -W -f='${Version} ${db:Status-Abbrev}' \"$p\" 2>/dev/null)\" in \"$v ii\"*) ;; *) bad=\"$bad $p=$v\" ;; esac; done && \\\n    { [ -z \"$bad\" ] || { echo \"vendored debs not installed at their vendored version:$bad\" >&2; false; }; } && \\\n    rm -rf /var/lib/apt/lists/* \\\n           /var/log/dpkg.log /var/log/alternatives.log /var/log/apt /var/cache/ldconfig/aux-cache /var/cache/fontconfig\nARG SOURCE_DATE_EPOCH=1791891415\nRUN groupadd -r grafana && useradd -r -g grafana -d /usr/share/grafana -m grafana && \\\n    mkdir -p /var/lib/grafana /var/lib/grafana/plugins /var/log/grafana /etc/grafana /etc/grafana/provisioning /etc/grafana/provisioning/datasources /etc/grafana/provisioning/dashboards /etc/grafana/provisioning/notifiers /etc/grafana/provisioning/plugins /etc/grafana/provisioning/access-control /etc/grafana/provisioning/alerting && chown -R grafana:grafana /var/lib/grafana /var/lib/grafana/plugins /var/log/grafana /etc/grafana /etc/grafana/provisioning /etc/grafana/provisioning/datasources /etc/grafana/provisioning/dashboards /etc/grafana/provisioning/notifiers /etc/grafana/provisioning/plugins /etc/grafana/provisioning/access-control /etc/grafana/provisioning/alerting && \\\n    : \"${SOURCE_DATE_EPOCH:?SOURCE_DATE_EPOCH must be set for a reproducible build}\" && \\\n    sed -ri \"s/^([^:]*:[^:]*):[0-9]*:/\\1:$((SOURCE_DATE_EPOCH/86400)):/\" /etc/shadow && \\\n    rm -f /etc/passwd- /etc/shadow- /etc/group- /etc/gshadow-\nCOPY --from=build_grafana /grafana /usr/share/grafana/bin/grafana","lines_shown":24,"lines_total":40}},{"path":"Dockerfile.vendor","size":2159,"sha256":"9aedbbd0c6b90813ae593c4f1edcb48368bdb20d4c9e53d8b0b20967ad88defb","public":"account","lines":25},{"path":"MANIFEST.txt","size":7969386,"sha256":"aed76aa35551b72af0a9140c1ed3a5eedfa7e58ea15f9b5f91deb6cc683f69bf","public":"account","lines":88742},{"path":"SOURCE_DATE_EPOCH.txt","size":11,"sha256":"2ffe12b614509added00393b6b35a0c1dc127530bde901e76eecda9c6b217736","public":"full","lines":1,"url":"/api/recipe/grafana/v13.2.4-CE-ubuntu24.04-r2/files/SOURCE_DATE_EPOCH.txt","text":"1791891415\n"},{"path":"TARGET_DIGEST.txt","size":286,"sha256":"1ed108cce1ce9101d6807eaffe2f3c0dd8365d4ac82b7ba53b5a87c613d5b799","public":"full","lines":6,"url":"/api/recipe/grafana/v13.2.4-CE-ubuntu24.04-r2/files/TARGET_DIGEST.txt","text":"image_manifest_digest=sha256:c45e7a2d37439c2045583444b0b6e9c40cb2cdb900b111f4d578f411b229fecd\nconfig_digest=sha256:7405cb24bc4e4f48d8bc0448d9629c47fca4ea16a4ffe6042dbe031da864da00\ntag=readystack/grafana:v13.2.4-CE-ubuntu24.04-r2\nprobe_port=3000\nprobe_path=/api/health\nprobe_timeout=180\n"},{"path":"VERIFY_OFFLINE.sh","size":7331,"sha256":"8b036b1f9a7f7deb4dbab14ef6b7c40622d2820904e891b8845ba3580e924506","public":"account","lines":128},{"path":"docs/PROVENANCE.md","size":1701,"sha256":"991d2c2f0a860eed6626284da41e56fa67706282b5104edee62ab30d6c5043ae","public":"account","lines":28},{"path":"docs/REBUILD.md","size":5103,"sha256":"70c878ad5d55c081c6f20faf55dea8b2c92f7b230435b3f77cd36f10f4e0c4c5","public":"account","lines":57},{"path":"docs/VERIFY.md","size":1963,"sha256":"e93e729a901f9b3c959e9142f37db09bb0f974f5e6ea678ef2d9533c3314ccf7","public":"account","lines":34},{"path":"docs/provenance/BASE_IMAGE_DIGESTS.lock","size":73,"sha256":"033870272678a7a902ec7dce1189f23963b1a8b7965d8c84dccf5f766edfda5a","public":"full","lines":2,"url":"/api/recipe/grafana/v13.2.4-CE-ubuntu24.04-r2/files/docs/provenance/BASE_IMAGE_DIGESTS.lock","text":"# base images for grafana (resolve at build_kit)\ngolang:1.26.10-bookworm\n"},{"path":"docs/provenance/BUILD_RECIPE.json","size":6242,"sha256":"f6ff873b041f72da5932d6cf7299973cc961221381bd48b0f972c489b484ab72","public":"account","lines":46,"redactions":[{"line":11,"kind":"internal host"},{"line":23,"kind":"internal host"},{"line":38,"kind":"internal host"}],"kit_sha256":"231ac94b8cadec154515909742456268b693459038e43c4722c40acd6c5ed9fd"},{"path":"docs/provenance/CUSTODY_INPUTS.json","size":760,"sha256":"15a4bf70cf3c133922683965f25a3909fee1e85dc91e8dd739d700c62f3b6b27","public":"account","lines":21},{"path":"docs/provenance/SOURCE_FILE_MANIFEST.json","size":352574,"sha256":"bef808117680b83c6e578898c5204d88b980a7478723d42b05495c99470324e4","public":"account","lines":5007},{"path":"docs/provenance/SOURCE_TREE_HASH.json","size":307,"sha256":"1f8ec878a583abdb792fc360c016da5e4688f54e77d76eca103d62f2cc3c62d4","public":"full","lines":9,"url":"/api/recipe/grafana/v13.2.4-CE-ubuntu24.04-r2/files/docs/provenance/SOURCE_TREE_HASH.json","text":"{\n  \"schema\": \"kitforge.source_tree_hash.v1\",\n  \"slug\": \"grafana\",\n  \"repo\": \"https://github.com/grafana/grafana\",\n  \"ref\": \"v13.2.4\",\n  \"commit\": \"af4a33e3786594ad72f72d97e6744010330c2977\",\n  \"tree_listing_sha256\": \"76c55ddc02f553bbf0934de92a0af3910faa12704feadbc80446400ae2ae8908\",\n  \"file_count\": 22456\n}"},{"path":"docs/provenance/SYSTEM_PINNING.lock","size":28,"sha256":"fa091140511e85f86057bf9f05d5bd9e073f13c04af3de77559c304bd4b38227","public":"account","lines":3},{"path":"docs/provenance/TOOLCHAIN.lock","size":3526,"sha256":"d21327be5890bed6b2c658bf7418badd574287aa32b1b5ad968d6454291d3937","public":"account","lines":102},{"path":"readystack-entrypoint.sh","size":1704,"sha256":"18fcfa5e73ddabef9ab423a2c074ff414feb6095607788a77a80fd6b9cd64044","public":"account","lines":26},{"path":"rebuild.json","size":1441,"sha256":"ebe1171c2c8c79e75037b6c31fb9c3337e0070834819ba6d41fb49fa31f78426","public":"account","lines":38},{"path":"toolchain/BUILDKIT_TAG.txt","size":22,"sha256":"fcd530eeb02b063d2f047adad6eef896422a8e8d558513e5f09b2a262be32573","public":"full","lines":1,"url":"/api/recipe/grafana/v13.2.4-CE-ubuntu24.04-r2/files/toolchain/BUILDKIT_TAG.txt","text":"moby/buildkit:v0.31.2\n"}],"skipped":[],"kit_adds":{"bases":{"files":16,"bytes":326583068},"docs":{"files":22505,"bytes":210958908},"toolchain":{"files":1,"bytes":111529472},"vendored":{"files":66195,"bytes":1337282932}},"links":{"page":"https://readystack.dev/products/grafana/recipe","signup":"https://readystack.dev/login.html?create=1&next=%2Fproducts%2Fgrafana%2Frecipe","kit":"https://readystack.dev/buy.html?product=grafana"}}