You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
See docker-library/official-images issue 16044
- `SOURCE_DATE_EPOCH` is added.
The value is consumed by the build scripts to make the `httpd` binary reproducible.
- GNU implementation of `wget` is executed with `--no-hsts` to disable creating `/root/.wget-hsts`
- For Debian, `/var/log/*` is removed as they contain timestamps
- For Debian, `/var/cache/ldconfig/aux-cache` is removed as they contain inode numbers, etc.
- For Alpine, virtual package versions are pinned to "0" to eliminate
the timestamp-based version numbers that appear in `/etc/apk/world` and `/lib/apk/db/installed`
The following topics are NOT covered by this commit:
- To reproduce file timestamps in layers, BuildKit has to be executed with
`--output type=<TYPE>,rewrite-timestamp=true`.
Needs BuildKit v0.13.0-beta1 or later.
- To reproduce the base image by the hash, reproducers may:
- modify the `FROM` instruction in Dockerfile manually
- or, use the `CONVERT` action of source policies to replace the base image.
<https://github.com/moby/buildkit/blob/v0.13.0-beta1/docs/build-repro.md>
- To reproduce Debian packages, reproducers may:
- modify the `RUN` instructions in the Dockerfile to rewrite `/etc/apt/sources.list`
to use <http://snapshot.debian.org>, and restore `/etc/apt/sources.list`
at the end of the instruction (See the rejected PR 248)
- or, specify a custom Dockerfile frontend implementation that
rewrites/restores `/etc/apt/sources.list`
- or, specify a custom `HTTP_PROXY` that redirects HTTP requests for
<http://deb.debian.org> to <http://snapshot.debian.org>.
This is less reliable in long-term due to `Acquire::Check-Valid-Until`.
Signed-off-by: Akihiro Suda <[email protected]>
0 commit comments