From 0f544008aabfb3ac43dc5f3493ec6c2aa15f0b87 Mon Sep 17 00:00:00 2001 From: CrazyMax Date: Tue, 13 Sep 2022 21:04:41 +0200 Subject: [PATCH] build: merge buildx overview page to main overview Signed-off-by: CrazyMax --- _data/toc.yaml | 2 - build/building/multi-platform.md | 6 +-- build/buildx/index.md | 53 ------------------------ build/index.md | 28 ++++++++----- build/release-notes.md | 2 +- desktop/index.md | 2 +- desktop/previous-versions/2.x-mac.md | 2 +- desktop/previous-versions/2.x-windows.md | 2 +- 8 files changed, 25 insertions(+), 72 deletions(-) delete mode 100644 build/buildx/index.md diff --git a/_data/toc.yaml b/_data/toc.yaml index 93f046ae7d..ee56208e0c 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -1395,8 +1395,6 @@ manuals: title: Multi-platform images - sectiontitle: Buildx section: - - path: /build/buildx/ - title: Buildx overview - path: /build/buildx/install/ title: Install Buildx - sectiontitle: Drivers diff --git a/build/building/multi-platform.md b/build/building/multi-platform.md index 1d8a336303..def51bef21 100644 --- a/build/building/multi-platform.md +++ b/build/building/multi-platform.md @@ -28,9 +28,9 @@ start to build, push, pull, and run images seamlessly on different compute architectures. In most cases, you don't have to make any changes to Dockerfiles or source code to start building for Arm. -BuildKit with [Buildx](../buildx/index.md) 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. +BuildKit with Buildx 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 diff --git a/build/buildx/index.md b/build/buildx/index.md deleted file mode 100644 index 8b9ba0f110..0000000000 --- a/build/buildx/index.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: Working with Buildx -description: Working with Docker Buildx -keywords: build, buildx, buildkit -redirect_from: -- /buildx/working-with-buildx/ ---- - -## Overview - -Docker Buildx is a CLI plugin that extends the docker command with the full -support of the features provided by [Moby BuildKit](https://github.com/moby/buildkit){:target="_blank" rel="noopener" class="_"} -builder toolkit. It provides the same user experience as docker build with many -new features like creating scoped builder instances and building against -multiple nodes concurrently. - -## Build with Buildx - -To start a new build, run the command `docker buildx build .` - -```console -$ docker buildx build . -[+] Building 8.4s (23/32) - => ... -``` - -Buildx builds using the BuildKit engine and does not require `DOCKER_BUILDKIT=1` -environment variable to start the builds. - -The [`docker buildx build` command](../../engine/reference/commandline/buildx_build.md) -supports features available for `docker build`, including features such as -outputs configuration, inline build caching, and specifying target platform. -In addition, Buildx also supports new features that are not yet available for -regular `docker build` like building manifest lists, distributed caching, and -exporting build results to OCI image tarballs. - -Buildx is flexible and can be run in different configurations that are exposed -through various "drivers". Each driver defines how and where a build should -run, and have different feature sets. - -We currently support the following drivers: - -* The `docker` driver ([guide](drivers/docker.md), [reference](/engine/reference/commandline/buildx_create/#driver)) -* The `docker-container` driver ([guide](drivers/docker-container.md), [reference](/engine/reference/commandline/buildx_create/#driver)) -* The `kubernetes` driver ([guide](drivers/kubernetes.md), [reference](/engine/reference/commandline/buildx_create/#driver)) -* The `remote` driver ([guide](drivers/remote.md)) - -For more information on drivers, see the [drivers guide](drivers/index.md). - -## High-level build options with Bake - -Check out our guide about [Bake](../bake/index.md) to get started with the -[`docker buildx bake` command](../../engine/reference/commandline/buildx_bake.md). diff --git a/build/index.md b/build/index.md index 60ef0dcde6..6392d34225 100644 --- a/build/index.md +++ b/build/index.md @@ -2,6 +2,8 @@ title: Overview of Docker Build description: Introduction and overview of Docker Build keywords: build, buildx, buildkit +redirect_from: +- /build/buildx/ --- ## Overview @@ -17,23 +19,29 @@ and tools. The most common method of executing a build is by issuing a sends the request to Docker Engine which, in turn, executes your build. There are now two components in Engine that can be used to build an image. -Starting with the 18.09 release, Engine is shipped with Moby [BuildKit](https://github.com/moby/buildkit){:target="_blank" rel="noopener" class="_"}, +Starting with the [18.09 release](../engine/release-notes/18.09.md#18090), Engine is +shipped with Moby [BuildKit](https://github.com/moby/buildkit){:target="_blank" rel="noopener" class="_"}, the new component for executing your builds by default. -With BuildKit, the new client [Docker Buildx](buildx/index.md), becomes -available as a CLI plugin. Docker Buildx extends the docker build command - -namely through the additional `docker buildx build` command - and fully -supports the new features BuildKit offers. - 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 is way more than the `docker build` command and is not only about +The new client [Docker Buildx](https://github.com/docker/buildx){:target="_blank" rel="noopener" class="_"}, +is a CLI plugin that extends the docker command with the full support of the +features provided by BuildKit builder toolkit. `docker buildx build` provides +the same user experience as `docker build` with many new features like creating +scoped builder instances, building against multiple nodes concurrently, outputs +configuration, inline build caching, and specifying target platform. In +addition, Buildx also supports new features that are not yet available for +regular `docker build` like building manifest lists, distributed caching, and +exporting build results to OCI image tarballs. + +Docker Build is way more than a simple 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: +not only common workflow tasks but also provides support for more complex and +advanced scenarios: ## Building your images @@ -94,7 +102,7 @@ leaking data into the final build or the cache. 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). +[Syntax directive](../engine/reference/builder.md#syntax). ### Configure BuildKit diff --git a/build/release-notes.md b/build/release-notes.md index 5f88700dcf..f2778f3d7b 100644 --- a/build/release-notes.md +++ b/build/release-notes.md @@ -6,7 +6,7 @@ toc_max: 2 --- This page contains information about the new features, improvements, and bug -fixes in [Buildx](buildx/index.md). +fixes in [Docker Buildx](https://github.com/docker/buildx){:target="_blank" rel="noopener" class="_"}. ## 0.9.1 diff --git a/desktop/index.md b/desktop/index.md index 6493030389..81fb692476 100644 --- a/desktop/index.md +++ b/desktop/index.md @@ -45,7 +45,7 @@ It provides a simple interface that enables you to manage your containers, appli - [Docker Engine](../engine/index.md) - Docker CLI client -- [Docker Buildx](../build/buildx/index.md) +- [Docker Buildx](../build/index.md) - [Docker Compose](../compose/index.md) - [Docker Content Trust](../engine/security/trust/index.md) - [Kubernetes](https://github.com/kubernetes/kubernetes/) diff --git a/desktop/previous-versions/2.x-mac.md b/desktop/previous-versions/2.x-mac.md index a04e468abe..23c25d831c 100644 --- a/desktop/previous-versions/2.x-mac.md +++ b/desktop/previous-versions/2.x-mac.md @@ -435,7 +435,7 @@ Note that you must sign in and create a Docker ID in order to download Docker De Docker Desktop Community 2.1.0.0 contains the following experimental features. * Docker App: Docker App is a CLI plugin that helps configure, share, and install applications. For more information, see [Working with Docker App](/app/working-with-app/). -* Docker Buildx: Docker Buildx is a CLI plugin for extended build capabilities with BuildKit. For more information, see [Buildx component](../../build/buildx/index.md). +* Docker Buildx: Docker Buildx is a CLI plugin for extended build capabilities with BuildKit. For more information, see the [Build page](../../build/index.md). ### Bug fixes and minor changes diff --git a/desktop/previous-versions/2.x-windows.md b/desktop/previous-versions/2.x-windows.md index 4e84aa87c2..c3d296e922 100644 --- a/desktop/previous-versions/2.x-windows.md +++ b/desktop/previous-versions/2.x-windows.md @@ -557,7 +557,7 @@ Note that you must sign in and create a Docker ID in order to download Docker De Docker Desktop Community 2.1.0.0 contains the following experimental features: * Docker App: Docker App is a CLI plugin that helps configure, share, and install applications. For more information, see [Working with Docker App](/app/working-with-app/). -* Docker Buildx: Docker Buildx is a CLI plugin for extended build capabilities with BuildKit. For more information, see [Buildx component](../../build/buildx/index.md). +* Docker Buildx: Docker Buildx is a CLI plugin for extended build capabilities with BuildKit. For more information, see the [Build page](../../build/index.md). ### Bug fixes and minor changes