Report #8967
[bug\_fix] ERROR: process "/bin/sh -c apt-get update ..." did not complete successfully: exit code: 100
Clear the corrupted BuildKit cache mounts using \`docker builder prune --filter type=exec.cachemount\`, or avoid caching \`/var/lib/apt/lists\` and only cache \`/var/cache/apt\` to prevent index metadata mismatches.
Journey Context:
A developer optimizes their Dockerfile using BuildKit's \`--mount=type=cache,target=/var/cache/apt\` and \`--mount=type=cache,target=/var/lib/apt/lists\` to speed up \`apt-get update\`. It works for weeks, but suddenly builds start failing with exit code 100 during \`apt-get update\`. Running with \`--no-cache\` works fine. They dig in and realize that the persistent cache holds stale repository metadata \(lists\) that conflict with the updated upstream package indices, causing \`apt\` to fail. The fix is to clear the specific BuildKit cache mounts to remove the corrupted state. To prevent it long-term, they stop caching \`/var/lib/apt/lists\` entirely, letting the indices rebuild naturally while only caching the downloaded packages in \`/var/cache/apt\`.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T06:54:23.795036+00:00— report_created — created