Releases: moby/buildkit
dockerfile/1.4.0-rc1
Usage
# syntax=docker.io/docker/dockerfile-upstream:1.4.0-rc1
Notable changes
-
COPY --link
andADD --link
allow copying files with increased cache efficiency and rebase images without requiring them to be rebuilt.--link
copies files to a separate layer and then uses new LLB MergeOp implementation to chain independent layers together. #2596 Documentation -
Heredocs support have been promoted from labs channel to stable. This feature allows writing multiline inline scripts and files #2589 Documentation
-
Additional named build contexts can be passed to build to add or overwrite a stage or an image inside the build. A source for the context can be a local source, image, Git, or HTTP URL. #2521 #2550 #2549 Buildx Documentation
-
When using a cross-compilation stage, the target platform for a step is now seen on progress output #2576
-
BUILDKIT_SANDBOX_HOSTNAME
build-arg can be used to set the default hostname for theRUN
steps. #2373 -
Fixes for some cases where Heredocs incorrectly removed quotes from content #2442
v0.9.3
Notable changes
- Workaround for deadlock in containerd pusher #2461
- Update containerd to 1.5.8 . Contains patch for CVE-2021-41190 #2470 #2462
v0.9.2
https://hub.docker.com/r/moby/buildkit
Notable changes
v0.9.1
https://hub.docker.com/r/moby/buildkit
Notable changes
-
Builtin Dockerfile frontend has been updated to v1.3.1 changelog
-
Seccomp profile has been updated to properly handle clone3 syscall support. #2379
-
Fix possible panic on ARM32 due to struct alignment #2321
-
Fix occasional "no active session" and "no such job" errors on concurrent builds #2369
-
Fix flakiness during import of a cache with empty layers removed #2372
-
Handle "edge not found" error in build instead of panicking #2382 #2385
-
Fix problems with experimental Github Actions cache backend:
- Add retry logic when API rate limits are reached tonistiigi/go-actions-cache#8
- Remove BOM from error messages returned by API tonistiigi/go-actions-cache#6
- Gracefully handle downloading blobs that have been removed from the cache #2387
- Fix "cache already exists" errors in certain conditions #2387
dockerfile/1.3.1-labs
Usage
This release is currently in staging.
# syntax=docker/dockerfile-upstream:1.3.1-labs
dockerfile/1.3.1
Usage
This release is currently in staging.
# syntax=docker/dockerfile-upstream:1.3.1
Notable changes
- Fix parsing "required" mount key without a value #2304
v0.9.0
Notable Changes
-
Builtin Dockerfile frontend defaults to
v1.3.0
including support forRUN --network
and Here-documents in labs channel. Dockerfile changelog Dockerfile labs changelog -
Experimental support for Github Actions remote cache backend via
type=gha
#1974 Docs -
Add support for subdirectories when building from Git source #2116
-
Outgoing TCP connections are now limited to 4 per registry. Metadata requests get one extra connection not used by layer pulls and pushes. #2259 #2242 #2247
-
Buildkitd config allows
max-parallelism
for limiting the parallelism of the BuildKit solver for low-powered machines #2049 -
OpenTracing providers have been replaced with support for OpenTelemetry #2152 #2192 #2238
-
Errors have been improved by removing gRPC wrapping and providing suggestions for typos #2218 #2047 #2215 #2183
-
New OpenTelemetry support allows forwarding traces with control API from the client or from user programs in
llb.Exec
container #2163 -
Git: Default branch name is now detected correctly from remote #2228
-
Allow forcing specific compression on exported layers even if another blob exists #2057
-
Plain progress mode now prints last logs of failed command in error summary #2214
-
Plain progress mode does not print to LLB vertex digest anymore to avoid confusion #2126
-
Buildctl allows
--metadata-file
flag to output build metadata #2095 -
This is the first release supporting Risc-V (experimental) #2222
-
This is the first release supporting MacOS ARM64 and Windows ARM64 for buildctl #2037 #2187
-
Runc has been updated to v1.0.0 GA #2143
-
RootlessKit has been updated to v0.14.2 #2102
-
Embedded QEMU emulators have been updated to v6.0.0 #2225
-
LLB: Root directory can now be copied from empty references without causing an error or panic #2197
-
LLB: Ensure image metadata resolver uses platform constraints set by marshaler #2196
-
LLB: Copy operation now allows include and exclude filters to limit the copied files #2082
-
Stargz snapshotter now supports authentication from Docker config #1733 #2165
-
Support Windows OpenSSH agent forwarding #2127
-
LLB: Support
ALL_PROXY
as a proxy environment variable that does not stay in build cache #2086 -
Buildkit release images now contain OpenSSH #2135
-
Enable containerd labels in
buildctl debug workers
and make their order deterministic #2070 #2071 -
Gracefully handle client-side token seed errors #2050
-
Pushing multi-platform images will not try to overwrite image tag internally multiple times. This is important for registries that support immutable tags. #2020
-
Missing
/etc/passwd
and/etc/group
file is now handled gracefully. Important when cross-compiling Windows images. #2249 -
Fix logs clipping behavior and double the limits #1934
-
Support socket activation with
--addr fd://
#1924 -
Daemon logs now show
traceID
andspanID
if OpenTelemetry is enabled #2235 -
Fix issue where Dockerfile with the same metadata and timestamps as another build could pick up its build cache by introducing a "none" differ for transferring local files that ignores metadata matches. #2081
-
Fix rare "retry timeout exceeded" errors in job synchronization #2195
-
Fix gracefully handling permission errors on accessing tokens from client-side #2234
-
Ensure containerd executor always waits for IO to complete before returning from
Exec/Run
. #2205 -
Fix pulling layers that have already been pulled with different compression. #2226
-
Fix some syncronisation errors #2178 #2177 #2156 #2052 #2051
-
Fix goroutine leak from progress writing #2203
Please try out the release binaries and report any issues at
https://github.com/moby/buildkit/issues.
Contributors
- Tõnis Tiigi
- Akihiro Suda
- Aaron Lehmann
- Sebastiaan van Stijn
- CrazyMax
- Tibor Vass
- Alex Couture-Beil
- Justin Chadwell
- Kohei Tokunaga
- Cory Bennett
- Erik Sipsma
- Siebe Schaap
- Vlad A. Ionescu
- Levi Harrison
- Brian Goff
- Edgar Lee
- Anders F Björklund
- Charles Korn
- Claudiu Belu
- Corey Larson
- Jesse Rittner
- Justin Garrison
- Marko Kohtala
- Omer Mizrahi
- Pierre Fenoll
- Rob Taylor
- Yamazaki Masashi
- zhangwenlong
v0.9.0-rc2
Welcome to the 0.9.0-rc2 release of buildkit!
This is a pre-release of buildkit
Notable Changes
- Fix progress regression in v0.9.0-rc1`#2254
- Experimental support for Github Actions remote cache backend via
type=gha
#1974 - Outgoing TCP connections are now limited to 4 per registry. Metadata requests get one extra connection not used by layer pulls and pushes. #2259 #2242 #2247
- Missing
/etc/passwd
and/etc/group
file is now handled gracefully. Important when cross-compiling Windows images. #2249 - Daemon logs now show
traceID
andspanID
is OpenTelemetry is enabled #2235 - OpenTelemetry traces now show extra information about outgoing HTTP requests #2238
- Fix gracefully handling permission errors on accessing tokens from client-side #2234
dockerfile/1.3.0-labs
Usage
# syntax=docker.io/docker/dockerfile:1.3.0-labs
Notable changes
-
RUN
andCOPY
commands now support Here-document syntax allowing writing multiline inline scripts and files #2132 #2201 #2209 #2213 Documentation
dockerfile/1.3.0
Usage
# syntax=docker.io/docker/dockerfile:1.3.0
Notable changes
-
RUN
command allows--network
flag for requesting a specific type of network conditions.--network=host
requires allowingnetwork.host
entitlement. This feature was previously only available on labs channel. Documentation -
ADD
command with a remote URL input now correctly handles the--chmod
flag. #2171 -
Values for
RUN --mount
flag now support variable expansion, except for thefrom
field #2089 -
Allow
BUILDKIT_MULTI_PLATFORM
build arg to force always creating multi-platform image, even if only contains single platform #1985