From 268391f6d45ddc2c22fcb124eec2c0f33b876b04 Mon Sep 17 00:00:00 2001 From: dribeiro Date: Tue, 19 Jul 2022 17:16:33 +0100 Subject: [PATCH 1/7] Conflict fixes --- _data/toc.yaml | 10 ++- build/buildx/index.md | 109 ------------------------------ build/buildx/multiarch-images.md | 81 ++++++++++++++++++++++ build/buildx/multiple-builders.md | 39 +++++++++++ 4 files changed, 127 insertions(+), 112 deletions(-) create mode 100644 build/buildx/multiarch-images.md create mode 100644 build/buildx/multiple-builders.md diff --git a/_data/toc.yaml b/_data/toc.yaml index ab70cbcc2bbe..8f2b14301d6c 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -1392,11 +1392,15 @@ manuals: title: Hello Build - sectiontitle: Buildx section: - - path: /build/buildx/ - title: Working with Buildx - path: /build/buildx/install/ title: Install Buildx - + - path: /build/buildx/ + title: Working with Buildx + - path: /build/buildx/multiple-builders/ + title: Using multiple builders + - path: /build/buildx/ + title: Bulding multiplatform images + - sectiontitle: Docker Compose section: - path: /compose/ diff --git a/build/buildx/index.md b/build/buildx/index.md index 4dab0bb66329..744b2e0954f6 100644 --- a/build/buildx/index.md +++ b/build/buildx/index.md @@ -47,115 +47,6 @@ automatically added to the "docker images" view by default, whereas when using other drivers, the method for outputting an image needs to be selected with `--output`. -## Work with builder instances - -By default, Buildx uses the `docker` driver if it is supported, providing a user -experience very similar to the native `docker build`. Note that you must use a -local shared daemon to build your applications. - -Buildx allows you to create new instances of isolated builders. You can use this -to get a scoped environment for your CI builds that does not change the state of -the shared daemon, or for isolating builds for different projects. You can create -a new instance for a set of remote nodes, forming a build farm, and quickly -switch between them. - -You can create new instances using the [`docker buildx create`](../../engine/reference/commandline/buildx_create.md) -command. This creates a new builder instance with a single node based on your -current configuration. - -To use a remote node you can specify the `DOCKER_HOST` or the remote context name -while creating the new builder. After creating a new instance, you can manage its -lifecycle using the [`docker buildx inspect`](../../engine/reference/commandline/buildx_inspect.md), -[`docker buildx stop`](../../engine/reference/commandline/buildx_stop.md), and -[`docker buildx rm`](../../engine/reference/commandline/buildx_rm.md) commands. -To list all available builders, use [`docker buildx ls`](../../engine/reference/commandline/buildx_ls.md). -After creating a new builder you can also append new nodes to it. - -To switch between different builders, use [`docker buildx use `](../../engine/reference/commandline/buildx_use.md). -After running this command, the build commands will automatically use this -builder. - -Docker also features a [`docker context`](../../engine/reference/commandline/context.md) -command that you can use to provide names for remote Docker API endpoints. Buildx -integrates with `docker context` to ensure all the contexts automatically get a -default builder instance. You can also set the context name as the target when -you create a new builder instance or when you add a node to it. - -## Build multi-platform images - -BuildKit is designed to work well for building for multiple platforms and not -only for the architecture and operating system that the user invoking the build -happens to run. - -When you invoke a build, you can set the `--platform` flag to specify the target -platform for the build output, (for example, `linux/amd64`, `linux/arm64`, or -`darwin/amd64`). - -When the current builder instance is backed by the `docker-container` driver, -you can specify multiple platforms together. In this case, it builds a manifest -list which contains images for all specified architectures. When you use this -image in [`docker run`](../../engine/reference/commandline/run.md) or -[`docker service`](../../engine/reference/commandline/service.md), Docker picks -the correct image based on the node's platform. - -You can build multi-platform images using three different strategies that are -supported by Buildx and Dockerfiles: - -1. Using the QEMU emulation support in the kernel -2. Building on multiple native nodes using the same builder instance -3. Using a stage in Dockerfile to cross-compile to different architectures - -QEMU is the easiest way to get started if your node already supports it (for -example. if you are using Docker Desktop). It requires no changes to your -Dockerfile and BuildKit automatically detects the secondary architectures that -are available. When BuildKit needs to run a binary for a different architecture, -it automatically loads it through a binary registered in the `binfmt_misc` -handler. - -For QEMU binaries registered with `binfmt_misc` on the host OS to work -transparently inside containers, they must be statically compiled and registered -with the `fix_binary` flag. This requires a kernel >= 4.8 and -binfmt-support >= 2.1.7. You can check for proper registration by checking if -`F` is among the flags in `/proc/sys/fs/binfmt_misc/qemu-*`. While Docker -Desktop comes preconfigured with `binfmt_misc` support for additional platforms, -for other installations it likely needs to be installed using -[`tonistiigi/binfmt`](https://github.com/tonistiigi/binfmt){:target="_blank" rel="noopener" class="_"} -image. - -```console -$ docker run --privileged --rm tonistiigi/binfmt --install all -``` - -Using multiple native nodes provide better support for more complicated cases -that are not handled by QEMU and generally have better performance. You can -add additional nodes to the builder instance using the `--append` flag. - -Assuming contexts `node-amd64` and `node-arm64` exist in `docker context ls`; - -```console -$ docker buildx create --use --name mybuild node-amd64 -mybuild -$ docker buildx create --append --name mybuild node-arm64 -$ docker buildx build --platform linux/amd64,linux/arm64 . -``` - -Finally, depending on your project, the language that you use may have good -support for cross-compilation. In that case, multi-stage builds in Dockerfiles -can be effectively used to build binaries for the platform specified with -`--platform` using the native architecture of the build node. A list of build -arguments like `BUILDPLATFORM` and `TARGETPLATFORM` is available automatically -inside your Dockerfile and can be leveraged by the processes running as part -of your build. - -```dockerfile -# syntax=docker/dockerfile:1 -FROM --platform=$BUILDPLATFORM golang:alpine AS build -ARG TARGETPLATFORM -ARG BUILDPLATFORM -RUN echo "I am running on $BUILDPLATFORM, building for $TARGETPLATFORM" > /log -FROM alpine -COPY --from=build /log /log -``` ## High-level build options diff --git a/build/buildx/multiarch-images.md b/build/buildx/multiarch-images.md new file mode 100644 index 000000000000..eae75c2542f9 --- /dev/null +++ b/build/buildx/multiarch-images.md @@ -0,0 +1,81 @@ +--- +title: Building multi-platform images +description: Different strategies for building multiplatform images +keywords: build, buildx, buildkit, multiplatform images +--- + +## Build multi-platform images + +BuildKit is designed to work well for building for multiple platforms and not +only for the architecture and operating system that the user invoking the build +happens to run. + +When you invoke a build, you can set the `--platform` flag to specify the target +platform for the build output, (for example, `linux/amd64`, `linux/arm64`, or +`darwin/amd64`). + +When the current builder instance is backed by the `docker-container` driver, +you can specify multiple platforms together. In this case, it builds a manifest +list which contains images for all specified architectures. When you use this +image in [`docker run`](../../engine/reference/commandline/run.md) or +[`docker service`](../../engine/reference/commandline/service.md), Docker picks +the correct image based on the node's platform. + +You can build multi-platform images using three different strategies that are +supported by Buildx and Dockerfiles: + +1. Using the QEMU emulation support in the kernel +2. Building on multiple native nodes using the same builder instance +3. Using a stage in Dockerfile to cross-compile to different architectures + +QEMU is the easiest way to get started if your node already supports it (for +example. if you are using Docker Desktop). It requires no changes to your +Dockerfile and BuildKit automatically detects the secondary architectures that +are available. When BuildKit needs to run a binary for a different architecture, +it automatically loads it through a binary registered in the `binfmt_misc` +handler. + +For QEMU binaries registered with `binfmt_misc` on the host OS to work +transparently inside containers, they must be statically compiled and registered +with the `fix_binary` flag. This requires a kernel >= 4.8 and +binfmt-support >= 2.1.7. You can check for proper registration by checking if +`F` is among the flags in `/proc/sys/fs/binfmt_misc/qemu-*`. While Docker +Desktop comes preconfigured with `binfmt_misc` support for additional platforms, +for other installations it likely needs to be installed using +[`tonistiigi/binfmt`](https://github.com/tonistiigi/binfmt){:target="_blank" rel="noopener" class="_"} +image. + +```console +$ docker run --privileged --rm tonistiigi/binfmt --install all +``` + +Using multiple native nodes provide better support for more complicated cases +that are not handled by QEMU and generally have better performance. You can +add additional nodes to the builder instance using the `--append` flag. + +Assuming contexts `node-amd64` and `node-arm64` exist in `docker context ls`; + +```console +$ docker buildx create --use --name mybuild node-amd64 +mybuild +$ docker buildx create --append --name mybuild node-arm64 +$ docker buildx build --platform linux/amd64,linux/arm64 . +``` + +Finally, depending on your project, the language that you use may have good +support for cross-compilation. In that case, multi-stage builds in Dockerfiles +can be effectively used to build binaries for the platform specified with +`--platform` using the native architecture of the build node. A list of build +arguments like `BUILDPLATFORM` and `TARGETPLATFORM` is available automatically +inside your Dockerfile and can be leveraged by the processes running as part +of your build. + +```dockerfile +# syntax=docker/dockerfile:1 +FROM --platform=$BUILDPLATFORM golang:alpine AS build +ARG TARGETPLATFORM +ARG BUILDPLATFORM +RUN echo "I am running on $BUILDPLATFORM, building for $TARGETPLATFORM" > /log +FROM alpine +COPY --from=build /log /log +``` diff --git a/build/buildx/multiple-builders.md b/build/buildx/multiple-builders.md new file mode 100644 index 000000000000..3924a2c4fa52 --- /dev/null +++ b/build/buildx/multiple-builders.md @@ -0,0 +1,39 @@ +--- +title: Using with multiple builders +description: How to instantiate and work with multiple builders +keywords: build, buildx, buildkit, builders, build drivers +--- + +## Using with builder instances + +By default, Buildx uses the `docker` driver if it is supported, providing a user +experience very similar to the native `docker build`. Note that you must use a +local shared daemon to build your applications. + +Buildx allows you to create new instances of isolated builders. You can use this +to get a scoped environment for your CI builds that does not change the state of +the shared daemon, or for isolating builds for different projects. You can create +a new instance for a set of remote nodes, forming a build farm, and quickly +switch between them. + +You can create new instances using the [`docker buildx create`](../../engine/reference/commandline/buildx_create.md) +command. This creates a new builder instance with a single node based on your +current configuration. + +To use a remote node you can specify the `DOCKER_HOST` or the remote context name +while creating the new builder. After creating a new instance, you can manage its +lifecycle using the [`docker buildx inspect`](../../engine/reference/commandline/buildx_inspect.md), +[`docker buildx stop`](../../engine/reference/commandline/buildx_stop.md), and +[`docker buildx rm`](../../engine/reference/commandline/buildx_rm.md) commands. +To list all available builders, use [`docker buildx ls`](../../engine/reference/commandline/buildx_ls.md). +After creating a new builder you can also append new nodes to it. + +To switch between different builders, use [`docker buildx use `](../../engine/reference/commandline/buildx_use.md). +After running this command, the build commands will automatically use this +builder. + +Docker also features a [`docker context`](../../engine/reference/commandline/context.md) +command that you can use to provide names for remote Docker API endpoints. Buildx +integrates with `docker context` to ensure all the contexts automatically get a +default builder instance. You can also set the context name as the target when +you create a new builder instance or when you add a node to it. \ No newline at end of file From c6abbdc699ad9e394e022d4bb7af1b760c3e7a1e Mon Sep 17 00:00:00 2001 From: Dora Ribeiro <103652162+dockertopia@users.noreply.github.com> Date: Wed, 20 Jul 2022 10:47:05 +0100 Subject: [PATCH 2/7] Update _data/toc.yaml Co-authored-by: Justin Chadwell --- _data/toc.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_data/toc.yaml b/_data/toc.yaml index 8f2b14301d6c..944e9f0c78c6 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -1398,7 +1398,7 @@ manuals: title: Working with Buildx - path: /build/buildx/multiple-builders/ title: Using multiple builders - - path: /build/buildx/ + - path: /build/buildx/multiplatform-images title: Bulding multiplatform images - sectiontitle: Docker Compose From 01734308ed4eec206e734bdbe1ac4ad470da6ee0 Mon Sep 17 00:00:00 2001 From: dribeiro Date: Mon, 25 Jul 2022 17:56:46 +0100 Subject: [PATCH 3/7] Minor edits regarding split --- _data/toc.yaml | 4 +-- build/buildx/index.md | 4 +-- build/buildx/install.md | 4 +-- build/buildx/multiarch-images.md | 5 ++- build/buildx/multiple-builders.md | 5 ++- build/index.md | 58 +++++++++++++++++++++++++++++++ 6 files changed, 68 insertions(+), 12 deletions(-) diff --git a/_data/toc.yaml b/_data/toc.yaml index 8f2b14301d6c..1bb95d5920e6 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -1398,8 +1398,8 @@ manuals: title: Working with Buildx - path: /build/buildx/multiple-builders/ title: Using multiple builders - - path: /build/buildx/ - title: Bulding multiplatform images + - path: /build/buildx/multiarch-images/ + title: Bulding multiplatform images - sectiontitle: Docker Compose section: diff --git a/build/buildx/index.md b/build/buildx/index.md index 744b2e0954f6..5af44f5b9f29 100644 --- a/build/buildx/index.md +++ b/build/buildx/index.md @@ -1,7 +1,7 @@ --- -title: Buildx +title: Working with Buildx description: Working with Docker Buildx -keywords: build, buildx, buildkit +keywords: build, buildx, BuildKit redirect_from: - /buildx/working-with-buildx/ --- diff --git a/build/buildx/install.md b/build/buildx/install.md index 0f33bd40122b..2ea69998f9d6 100644 --- a/build/buildx/install.md +++ b/build/buildx/install.md @@ -1,7 +1,7 @@ --- title: Install Docker Buildx description: How to install Docker Buildx -keywords: build, buildx, buildkit +keywords: build, buildx, BuildKit --- ## Docker Desktop @@ -75,4 +75,4 @@ sets up docker builder command as an alias to `docker buildx`. This results in the ability to have [`docker build`](../../engine/reference/commandline/build.md) use the current buildx builder. -To remove this alias, run [`docker buildx uninstall`](../../engine/reference/commandline/buildx_uninstall.md). +To remove this alias, run [`docker buildx uninstall`](../../engine/reference/commandline/buildx_uninstall.md). \ No newline at end of file diff --git a/build/buildx/multiarch-images.md b/build/buildx/multiarch-images.md index eae75c2542f9..eb1d74f3ece2 100644 --- a/build/buildx/multiarch-images.md +++ b/build/buildx/multiarch-images.md @@ -1,10 +1,9 @@ --- title: Building multi-platform images description: Different strategies for building multiplatform images -keywords: build, buildx, buildkit, multiplatform images +keywords: build, buildx, BuildKit, multiplatform images --- -## Build multi-platform images BuildKit is designed to work well for building for multiple platforms and not only for the architecture and operating system that the user invoking the build @@ -78,4 +77,4 @@ ARG BUILDPLATFORM RUN echo "I am running on $BUILDPLATFORM, building for $TARGETPLATFORM" > /log FROM alpine COPY --from=build /log /log -``` +``` \ No newline at end of file diff --git a/build/buildx/multiple-builders.md b/build/buildx/multiple-builders.md index 3924a2c4fa52..09fab04304a9 100644 --- a/build/buildx/multiple-builders.md +++ b/build/buildx/multiple-builders.md @@ -1,10 +1,9 @@ --- -title: Using with multiple builders +title: Using multiple builders description: How to instantiate and work with multiple builders -keywords: build, buildx, buildkit, builders, build drivers +keywords: build, buildx, BuildKit, builders, build drivers --- -## Using with builder instances By default, Buildx uses the `docker` driver if it is supported, providing a user experience very similar to the native `docker build`. Note that you must use a diff --git a/build/index.md b/build/index.md index bea1fe764e36..31d50e996cc7 100644 --- a/build/index.md +++ b/build/index.md @@ -27,3 +27,61 @@ BuildKit is the backend evolution from the Legacy Builder, it comes with new and much improved functionality that can be powerful tools for improving your builds' performance or reusability of your Dockerfiles, and it also introduces support for complex scenarios. + +## Docker Build features + +Docker Build is way more than your `docker build` command and is not only about packaging your code, it’s a whole ecosystem of tools and features that support you not only with common workflow tasks but also provides you with support for more complex and advanced scenarios. +Here’s an overview of all the use cases with which Build can support you: + +### Building your images + +* **Packaging your software** +Bundle and package your code to run anywhere, from your local Docker Desktop, to Docker Engine and Kubernetes on the cloud. +To get started with Build, see the [Hello Build](hellobuild.md) page. + +* **Choosing a build driver** +Run Buildx with different configurations depending on the scenario you are working on, regardless of whether you are using your local machine or a remote compute cluster, all from the comfort of your local working environment. +Here’s a quick overview of the drivers and the use cases they support: + * `docker`– use the default built-in builder to get started quickly. + * `docker-container` – spin up a dedicated builder in a docker container to unlock more advanced features like advanced caching, and multi-arch images. + * `kubernetes`– connect to your Kubernetes cluster to unlock more features and to run your builds at scale. + * `remote`– manually manage your own BuildKit builder and connect directly to it. + +* **Optimizing builds with cache management** +Improve build performance by using a persistent shared build cache to avoid repeating costly operations such as package installations, downloading files from the internet, or code build steps. + +* **Creating build-once, run-anywhere with multi-architecture builds** +Collaborate across platforms with one build artifact. +See [Build multi platform images](buildx/index.md/#build-multi-platform-images). + +### Automating your builds + +* **Integrating with GitHub** +Automate your image builds to run in GitHub actions using the official docker build actions. See: + * [GitHub Action to build and push Docker images with Buildx](https://github.com/docker/build-push-action). + * [GitHub Action to extract metadata from Git reference and GitHub events](https://github.com/docker/metadata-action/). + +* **Orchestrating builds across complex projects together** +Connect your builds together and easily parameterize your images using buildx bake. + +See [High-level build options](buildx/index.md/#high-level-build-options) + +### Customizing your Builds + +* **Select your build output format** +Choose from a variety of available output formats, to export any artifact you like from BuildKit, not just docker images. +See [Set the export action for the build result](../engine/reference/commandline/buildx_build.md/#output). + +* **Managing build secrets** +Securely access protected repositories and resources at build time without leaking data into the final build or the cache. + +### Extending BuildKit + +* **Custom syntax on Dockerfile** +Use experimental versions of the Dockerfile frontend, or even just bring your own to BuildKit using the power of custom frontends. +See also the [Syntax directive](../engine/reference/builder/#syntax). + +* **Configure BuildKit** +Take a deep dive into the internal BuildKit configuration to get the most out of your builds. +See also [`buildkitd.toml`](https://github.com/moby/buildkit/blob/master/docs/buildkitd.toml.md), the configuration file for `buildkitd`. + From 4520880f448f4fdd74aed00596409d77320baf53 Mon Sep 17 00:00:00 2001 From: dribeiro Date: Mon, 25 Jul 2022 18:12:28 +0100 Subject: [PATCH 4/7] Link to new page --- build/index.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/build/index.md b/build/index.md index 31d50e996cc7..7a03da2a7be7 100644 --- a/build/index.md +++ b/build/index.md @@ -52,7 +52,7 @@ Improve build performance by using a persistent shared build cache to avoid repe * **Creating build-once, run-anywhere with multi-architecture builds** Collaborate across platforms with one build artifact. -See [Build multi platform images](buildx/index.md/#build-multi-platform-images). +See [Build multi platform images](buildx/multiarch-images.md). ### Automating your builds @@ -83,5 +83,4 @@ See also the [Syntax directive](../engine/reference/builder/#syntax). * **Configure BuildKit** Take a deep dive into the internal BuildKit configuration to get the most out of your builds. -See also [`buildkitd.toml`](https://github.com/moby/buildkit/blob/master/docs/buildkitd.toml.md), the configuration file for `buildkitd`. - +See also [`buildkitd.toml`](https://github.com/moby/buildkit/blob/master/docs/buildkitd.toml.md), the configuration file for `buildkitd`. \ No newline at end of file From 439210448d6af5eb2f7a0c08e9baeae9a9d6111f Mon Sep 17 00:00:00 2001 From: Dora Ribeiro <103652162+dockertopia@users.noreply.github.com> Date: Tue, 26 Jul 2022 00:02:57 +0100 Subject: [PATCH 5/7] Apply suggestions from code review Empty lines in md. Co-authored-by: CrazyMax --- _data/toc.yaml | 2 +- build/buildx/multiarch-images.md | 2 -- build/buildx/multiple-builders.md | 2 -- 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/_data/toc.yaml b/_data/toc.yaml index 33dff53ab7a5..431e35cb2460 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -1399,7 +1399,7 @@ manuals: - path: /build/buildx/multiple-builders/ title: Using multiple builders - path: /build/buildx/multiarch-images/ - title: Bulding multi-platform images + title: Building multi-platform images - sectiontitle: Docker Compose section: - path: /compose/ diff --git a/build/buildx/multiarch-images.md b/build/buildx/multiarch-images.md index eb1d74f3ece2..d79fdaf177d4 100644 --- a/build/buildx/multiarch-images.md +++ b/build/buildx/multiarch-images.md @@ -3,8 +3,6 @@ title: Building multi-platform images description: Different strategies for building multiplatform images keywords: build, buildx, BuildKit, multiplatform images --- - - BuildKit is designed to work well for building for multiple platforms and not only for the architecture and operating system that the user invoking the build happens to run. diff --git a/build/buildx/multiple-builders.md b/build/buildx/multiple-builders.md index 09fab04304a9..7923aed3a521 100644 --- a/build/buildx/multiple-builders.md +++ b/build/buildx/multiple-builders.md @@ -3,8 +3,6 @@ title: Using multiple builders description: How to instantiate and work with multiple builders keywords: build, buildx, BuildKit, builders, build drivers --- - - By default, Buildx uses the `docker` driver if it is supported, providing a user experience very similar to the native `docker build`. Note that you must use a local shared daemon to build your applications. From 18bccf80eaca8bb87683905ff6f2d7c10e67b849 Mon Sep 17 00:00:00 2001 From: dribeiro Date: Tue, 26 Jul 2022 00:11:42 +0100 Subject: [PATCH 6/7] Lowercased all keywords --- build/buildx/index.md | 2 +- build/buildx/install.md | 2 +- build/buildx/multiarch-images.md | 4 ++-- build/buildx/multiple-builders.md | 2 +- build/hellobuild.md | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/build/buildx/index.md b/build/buildx/index.md index 5af44f5b9f29..e21f0e12e376 100644 --- a/build/buildx/index.md +++ b/build/buildx/index.md @@ -1,7 +1,7 @@ --- title: Working with Buildx description: Working with Docker Buildx -keywords: build, buildx, BuildKit +keywords: build, buildx, buildkit redirect_from: - /buildx/working-with-buildx/ --- diff --git a/build/buildx/install.md b/build/buildx/install.md index 2ea69998f9d6..b2fe45d0ffce 100644 --- a/build/buildx/install.md +++ b/build/buildx/install.md @@ -1,7 +1,7 @@ --- title: Install Docker Buildx description: How to install Docker Buildx -keywords: build, buildx, BuildKit +keywords: build, buildx, buildkit --- ## Docker Desktop diff --git a/build/buildx/multiarch-images.md b/build/buildx/multiarch-images.md index d79fdaf177d4..9f0b3fc87e57 100644 --- a/build/buildx/multiarch-images.md +++ b/build/buildx/multiarch-images.md @@ -1,7 +1,7 @@ --- title: Building multi-platform images -description: Different strategies for building multiplatform images -keywords: build, buildx, BuildKit, multiplatform images +description: Different strategies for building multi-platform images +keywords: build, buildx, buildkit, multi-platform images --- BuildKit is designed to work well for building for multiple platforms and not only for the architecture and operating system that the user invoking the build diff --git a/build/buildx/multiple-builders.md b/build/buildx/multiple-builders.md index 7923aed3a521..4a68cf1555f9 100644 --- a/build/buildx/multiple-builders.md +++ b/build/buildx/multiple-builders.md @@ -1,7 +1,7 @@ --- title: Using multiple builders description: How to instantiate and work with multiple builders -keywords: build, buildx, BuildKit, builders, build drivers +keywords: build, buildx, buildkit, builders, build drivers --- By default, Buildx uses the `docker` driver if it is supported, providing a user experience very similar to the native `docker build`. Note that you must use a diff --git a/build/hellobuild.md b/build/hellobuild.md index 880495dd13af..7cdcb96f2fad 100644 --- a/build/hellobuild.md +++ b/build/hellobuild.md @@ -1,7 +1,7 @@ --- title: Hello Build description: Build Hello World -keywords: build, buildx, buildkit, getting started, Dockerfile, image layers, build instructions, build context +keywords: build, buildx, buildkit, getting started, dockerfile, image layers, build instructions, build context --- ## Hello Build! From 7b88125181ca342ad406b6b01b7dd5668c7c4167 Mon Sep 17 00:00:00 2001 From: dribeiro Date: Wed, 27 Jul 2022 11:17:38 +0100 Subject: [PATCH 7/7] Changes from review --- _data/toc.yaml | 6 +++--- .../buildx/{multiarch-images.md => multiplatform-images.md} | 0 build/index.md | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) rename build/buildx/{multiarch-images.md => multiplatform-images.md} (100%) diff --git a/_data/toc.yaml b/_data/toc.yaml index 431e35cb2460..e08faa981483 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -1392,13 +1392,13 @@ manuals: title: Hello Build - sectiontitle: Buildx section: + - path: /build/buildx/ + title: Buildx overview - path: /build/buildx/install/ title: Install Buildx - - path: /build/buildx/ - title: Working with Buildx - path: /build/buildx/multiple-builders/ title: Using multiple builders - - path: /build/buildx/multiarch-images/ + - path: /build/buildx/multiplatform-images/ title: Building multi-platform images - sectiontitle: Docker Compose section: diff --git a/build/buildx/multiarch-images.md b/build/buildx/multiplatform-images.md similarity index 100% rename from build/buildx/multiarch-images.md rename to build/buildx/multiplatform-images.md diff --git a/build/index.md b/build/index.md index 7a03da2a7be7..4526ef049c8b 100644 --- a/build/index.md +++ b/build/index.md @@ -43,7 +43,7 @@ To get started with Build, see the [Hello Build](hellobuild.md) page. Run Buildx with different configurations depending on the scenario you are working on, regardless of whether you are using your local machine or a remote compute cluster, all from the comfort of your local working environment. Here’s a quick overview of the drivers and the use cases they support: * `docker`– use the default built-in builder to get started quickly. - * `docker-container` – spin up a dedicated builder in a docker container to unlock more advanced features like advanced caching, and multi-arch images. + * `docker-container` – spin up a dedicated builder in a docker container to unlock more advanced features like advanced caching, and multi-platform images. * `kubernetes`– connect to your Kubernetes cluster to unlock more features and to run your builds at scale. * `remote`– manually manage your own BuildKit builder and connect directly to it. @@ -52,7 +52,7 @@ Improve build performance by using a persistent shared build cache to avoid repe * **Creating build-once, run-anywhere with multi-architecture builds** Collaborate across platforms with one build artifact. -See [Build multi platform images](buildx/multiarch-images.md). +See [Build multi-platform images](buildx/multiplatform-images.md). ### Automating your builds