Docker Engine 29 rootless¶
Upstream Docker Engine 29.8.1 static payload on maintained Alpine, rootless daemon
Image: ghcr.io/strukturpiloten/docker-29-rootless
Declared image version: v29.8.1
Family: Docker Engine
Architecture: amd64, arm64
Inner mode: rootless
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.698705+00:00.
Observed latest index digest: sha256:075f6b6e6f15960ebf3bca6496331ee6b0e32d96b7824cbac382ae5b296f0d7c.
Pull the observed immutable artifact:
podman pull ghcr.io/strukturpiloten/docker-29-rootless@sha256:075f6b6e6f15960ebf3bca6496331ee6b0e32d96b7824cbac382ae5b296f0d7c
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-rootless@sha256:075f6b6e6f15960ebf3bca6496331ee6b0e32d96b7824cbac382ae5b296f0d7c
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": "rootless",
"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-075f6b6e6f15960ebf3bca6496331ee6b0e32d96b7824cbac382ae5b296f0d7c, sha256-b378c3f30db685c7505b7950222bf6ca2848345c0a3d06ec703834e86e3222f5, sha256-dc7857d1b8483a60010c298981ab15bca79389d0f68cfd955d6dddf790df773d.
Evidence and timestamps¶
| Field | Observed value |
|---|---|
| Source revision | 0b136a13a8bb612d91960ae5d07e72f449c89ec1 |
| Build succeeded | 2026-09-27T20:33:25.763033+00:00 |
| Published | unknown |
| Registry checked | 2026-09-28T10:15:52.698705+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:b378c3f30db685c7505b7950222bf6ca2848345c0a3d06ec703834e86e3222f5
Config: sha256:dd4a9d9f482b37db05b5d9f897c05e3030351320360aad9e4986aaa154200d1f
Config created: 2026-09-27T19:57:58Z
| Label | Value |
|---|---|
| org.opencontainers.image.base.digest | sha256:294b683cb724975bec92580e1e685676bd4b50bda910ddb8c51d4cabeaec77e6 |
| org.opencontainers.image.base.name | docker.io/library/alpine:3.24 |
| org.opencontainers.image.created | 2026-09-27T19:57:58Z |
| org.opencontainers.image.description | Upstream Docker Engine 29.8.1 static payload on maintained Alpine, rootless daemon |
| org.opencontainers.image.documentation | https://github.com/Strukturpiloten/containers/tree/0b136a13a8bb612d91960ae5d07e72f449c89ec1/images/docker/docker-29-rootless |
| org.opencontainers.image.licenses | AGPL-3.0-only |
| org.opencontainers.image.revision | 0b136a13a8bb612d91960ae5d07e72f449c89ec1 |
| org.opencontainers.image.source | https://github.com/Strukturpiloten/containers |
| org.opencontainers.image.title | Docker Engine 29 rootless |
| org.opencontainers.image.url | https://github.com/Strukturpiloten/containers/pkgs/container/docker-29-rootless |
| org.opencontainers.image.vendor | Strukturpiloten OHG |
| org.opencontainers.image.version | 29.8.1 |
arm64 OCI config and labels
Manifest: sha256:dc7857d1b8483a60010c298981ab15bca79389d0f68cfd955d6dddf790df773d
Config: sha256:f54e2405addb3ba51083d5cada03defd0417df809473077171d1d9c9f8087efd
Config created: 2026-09-27T19:57:58Z
| Label | Value |
|---|---|
| org.opencontainers.image.base.digest | sha256:294b683cb724975bec92580e1e685676bd4b50bda910ddb8c51d4cabeaec77e6 |
| org.opencontainers.image.base.name | docker.io/library/alpine:3.24 |
| org.opencontainers.image.created | 2026-09-27T19:57:58Z |
| org.opencontainers.image.description | Upstream Docker Engine 29.8.1 static payload on maintained Alpine, rootless daemon |
| org.opencontainers.image.documentation | https://github.com/Strukturpiloten/containers/tree/0b136a13a8bb612d91960ae5d07e72f449c89ec1/images/docker/docker-29-rootless |
| org.opencontainers.image.licenses | AGPL-3.0-only |
| org.opencontainers.image.revision | 0b136a13a8bb612d91960ae5d07e72f449c89ec1 |
| org.opencontainers.image.source | https://github.com/Strukturpiloten/containers |
| org.opencontainers.image.title | Docker Engine 29 rootless |
| org.opencontainers.image.url | https://github.com/Strukturpiloten/containers/pkgs/container/docker-29-rootless |
| org.opencontainers.image.vendor | Strukturpiloten OHG |
| org.opencontainers.image.version | 29.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.