Docker Engine 29 rootful

Upstream Docker Engine 29.8.1 static payload on maintained Alpine, rootful daemon

Image: ghcr.io/strukturpiloten/docker-29-rootful
Declared image version: v29.8.1
Family: Docker Engine
Architecture: amd64, arm64
Inner mode: rootful

Declared runtime base: docker.io/library/alpine:3.24@sha256:294b683cb724975bec92580e1e685676bd4b50bda910ddb8c51d4cabeaec77e6

Image source and metadata · GHCR package · Detailed guide

Choose and inspect

Declared upstream software: 29.8.1

Declared tags: v29.8.1, v29.8, v29, main, latest. These are publication policy aliases, not proof that any tag exists in GHCR. Even the exact SemVer tag can move after a reviewed rebuild.

Registry status: observed; checked at 2026-09-28T10:15:52.666017+00:00.

Observed latest index digest: sha256:bc71d19fbcd6d84d1452f61e6c3cbac77b6acaba214d7eb830b79124d1a4d563.

Pull the observed immutable artifact:

podman pull ghcr.io/strukturpiloten/docker-29-rootful@sha256:bc71d19fbcd6d84d1452f61e6c3cbac77b6acaba214d7eb830b79124d1a4d563

For an isolated Linux nested-Docker test, the outer Podman boundary runs rootfully and privileged. Use a trusted runner and keep its image store separate from other tests:

sudo podman run --rm --detach --name nested-docker --privileged --device /dev/fuse --security-opt label=disable ghcr.io/strukturpiloten/docker-29-rootful@sha256:bc71d19fbcd6d84d1452f61e6c3cbac77b6acaba214d7eb830b79124d1a4d563
ready=0
for attempt in $(seq 1 30); do
  if sudo podman exec nested-docker docker info >/dev/null 2>&1; then ready=1; break; fi
  sleep 2
done
if [ "$ready" -eq 1 ]; then sudo podman exec nested-docker docker info; else sudo podman logs nested-docker; fi
sudo podman stop nested-docker
test "$ready" -eq 1

This fixture does not use the host Docker socket. Read the detailed guide for nested workloads.

Support and runtime contract

Lifecycle: maintained; admission: isolated-test; review after: 2026-10-27.

Selected current Engine remains subject to upstream and security review.

Declared runtime profiles: docker. Declared test settings are in the metadata source. Admission is policy, not evidence of a passed test.

Declared runtime test contract:

{
  "docker": {
    "mode": "rootful",
    "nestedRuntime": true,
    "outerPrivilege": "privileged"
  }
}

Registry aliases and history

Aliases resolved to the observed current digest: latest, main, v29, v29.8, v29.8.1.

Listed without digest resolution: run-36346260768-1-sha-0b136a13a8bb612d91960ae5d07e72f449c89ec1, sha-0b136a13a8bb612d91960ae5d07e72f449c89ec1, sha256-0a96ed5b580d1b00803b67f04ba0428c1ee7d6bc0711ec26cc999fcc79f15a3a, sha256-6f23d0a2f8aae93d3bf85bb88262f6b70f95764197fff1170b9e7431ae9162d9, sha256-bc71d19fbcd6d84d1452f61e6c3cbac77b6acaba214d7eb830b79124d1a4d563.

Evidence and timestamps

Field Observed value
Source revision 0b136a13a8bb612d91960ae5d07e72f449c89ec1
Build succeeded 2026-09-27T20:32:34.380710+00:00
Published unknown
Registry checked 2026-09-28T10:15:52.666017+00:00
Evidence verified
Compared with current declarations matched

Matching release asset verified the build record and per-architecture runtime and scan evidence. Signature and provenance remain unverified in this snapshot.

Maintenance release · Evidence asset

amd64 OCI config and labels

Manifest: sha256:0a96ed5b580d1b00803b67f04ba0428c1ee7d6bc0711ec26cc999fcc79f15a3a
Config: sha256:e31279af907a1c9ce120ce4164f30a74c3493bf09b9081a43eb884b8d6e5bc27
Config created: 2026-09-27T19:57:58Z

LabelValue
org.opencontainers.image.base.digestsha256:294b683cb724975bec92580e1e685676bd4b50bda910ddb8c51d4cabeaec77e6
org.opencontainers.image.base.namedocker.io/library/alpine:3.24
org.opencontainers.image.created2026-09-27T19:57:58Z
org.opencontainers.image.descriptionUpstream Docker Engine 29.8.1 static payload on maintained Alpine, rootful daemon
org.opencontainers.image.documentationhttps://github.com/Strukturpiloten/containers/tree/0b136a13a8bb612d91960ae5d07e72f449c89ec1/images/docker/docker-29-rootful
org.opencontainers.image.licensesAGPL-3.0-only
org.opencontainers.image.revision0b136a13a8bb612d91960ae5d07e72f449c89ec1
org.opencontainers.image.sourcehttps://github.com/Strukturpiloten/containers
org.opencontainers.image.titleDocker Engine 29 rootful
org.opencontainers.image.urlhttps://github.com/Strukturpiloten/containers/pkgs/container/docker-29-rootful
org.opencontainers.image.vendorStrukturpiloten OHG
org.opencontainers.image.version29.8.1
arm64 OCI config and labels

Manifest: sha256:6f23d0a2f8aae93d3bf85bb88262f6b70f95764197fff1170b9e7431ae9162d9
Config: sha256:51b2578566b1dc957bcc9d07883d4c488788989c06e2f9b7910d115a072c7111
Config created: 2026-09-27T19:57:58Z

LabelValue
org.opencontainers.image.base.digestsha256:294b683cb724975bec92580e1e685676bd4b50bda910ddb8c51d4cabeaec77e6
org.opencontainers.image.base.namedocker.io/library/alpine:3.24
org.opencontainers.image.created2026-09-27T19:57:58Z
org.opencontainers.image.descriptionUpstream Docker Engine 29.8.1 static payload on maintained Alpine, rootful daemon
org.opencontainers.image.documentationhttps://github.com/Strukturpiloten/containers/tree/0b136a13a8bb612d91960ae5d07e72f449c89ec1/images/docker/docker-29-rootful
org.opencontainers.image.licensesAGPL-3.0-only
org.opencontainers.image.revision0b136a13a8bb612d91960ae5d07e72f449c89ec1
org.opencontainers.image.sourcehttps://github.com/Strukturpiloten/containers
org.opencontainers.image.titleDocker Engine 29 rootful
org.opencontainers.image.urlhttps://github.com/Strukturpiloten/containers/pkgs/container/docker-29-rootful
org.opencontainers.image.vendorStrukturpiloten OHG
org.opencontainers.image.version29.8.1

GitHub package activity can include signatures and attestations; it does not identify when the current runnable image was published. A registry observation is a point-in-time check; mutable tags may move afterward. Use the immutable digest and maintenance evidence for an audit.

View source ↗ Read as Markdown Source updated