mirror of https://github.com/docker/docs.git
build: refresh overview page
Signed-off-by: CrazyMax <crazy-max@users.noreply.github.com>
This commit is contained in:
parent
32dd6ae4af
commit
609da7feb3
|
@ -4,18 +4,20 @@ description: Introduction and overview of Docker Build
|
|||
keywords: build, buildx, buildkit
|
||||
---
|
||||
|
||||
Docker Build is one of Docker Engine’s most used features. Whenever you are
|
||||
## Overview
|
||||
|
||||
Docker Build is one of Docker Engine's most used features. Whenever you are
|
||||
creating an image you are using Docker Build. Build is a key part of your
|
||||
software development life cycle allowing you to package and bundle your code
|
||||
and ship it anywhere.
|
||||
|
||||
Engine uses a client-server architecture and is composed of multiple components
|
||||
and tools. The most common method of executing a build is by issuing a
|
||||
`docker build` command from the Docker CLI. The CLI sends the request to Docker
|
||||
Engine which, in turn, executes your build.
|
||||
[`docker build` command](../engine/reference/commandline/build.md). The CLI
|
||||
sends the request to Docker Engine which, in turn, executes your build.
|
||||
|
||||
There are now two components in Engine that can be used to create the build.
|
||||
Starting with the 18.09 release, Engine is shipped with [Moby BuildKit](https://github.com/moby/buildkit){:target="_blank" rel="noopener" class="_"},
|
||||
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="_"},
|
||||
the new component for executing your builds by default.
|
||||
|
||||
With BuildKit, the new client [Docker Buildx](buildx/index.md), becomes
|
||||
|
@ -28,56 +30,73 @@ 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 the `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:
|
||||
|
||||
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
|
||||
|
||||
### Building your images
|
||||
### Packaging your software
|
||||
|
||||
* **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 [Packaging your software](building/packaging.md) page.
|
||||
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 [Packaging your software](building/packaging.md) page.
|
||||
|
||||
### Choosing a build driver
|
||||
|
||||
* **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.
|
||||
For more information on drivers, see the [drivers guide](buildx/drivers/index.md).
|
||||
|
||||
* **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.
|
||||
### Optimizing builds with cache management
|
||||
|
||||
* **Creating build-once, run-anywhere with multi-platform builds**
|
||||
Collaborate across platforms with one build artifact.
|
||||
See [Build multi-platform images](buildx/multiplatform-images.md).
|
||||
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.
|
||||
|
||||
### Automating your builds
|
||||
### Creating build-once, run-anywhere with multi-platform 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/).
|
||||
Collaborate across platforms with one build artifact. See [Build multi-platform images](buildx/multiplatform-images.md).
|
||||
|
||||
* **Orchestrating builds across complex projects together**
|
||||
Connect your builds together and easily parameterize your images using buildx bake.
|
||||
## Automating your builds
|
||||
|
||||
### Integrating with GitHub
|
||||
|
||||
Automate your image builds to run in GitHub actions using the official docker
|
||||
build actions:
|
||||
|
||||
* [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 with Bake](bake/index.md).
|
||||
|
||||
### Customizing your Builds
|
||||
## 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).
|
||||
### Select your build output format
|
||||
|
||||
* **Managing build secrets**
|
||||
Securely access protected repositories and resources at build time without leaking data into the final build or the cache.
|
||||
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).
|
||||
|
||||
### Extending BuildKit
|
||||
### Managing build secrets
|
||||
|
||||
* **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).
|
||||
Securely access protected repositories and resources at build time without
|
||||
leaking data into the final build or the cache.
|
||||
|
||||
* **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`.
|
||||
## 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`.
|
||||
|
|
Loading…
Reference in New Issue