Using buildkit by default

If we are using latest doker engine (24.0.5) and installed docker-buildx-plugin

in this case will “docker build” command uses buildkit as a builder by default?

Or still we need to make “DOCKER_BUILDKIT=1” to enable that?

if buildkit is default builder on latest docker engine, what is the use of buildx plugin

Yes, buildkit is the default builder, but you can still use the buildx plugin as before. If you want to use the build subcommand only, you can see the supported parameters in the help:

docker build --help

The only difference between docker build and docker buildx build is that docker build mentions docker desktop in the description of a parameter, the other doesn’t

Of course buildx has other subcommands, not just build so you still need to use buildx for those.

You mean - i can use buildkit as default builder when using “docker build” command.

How can i check whether it us using buildkit or legacy builder?

i need to make sure that when moving to latest docker version - it will use “buildkit” as default builder without using “DOCKER_BUILDKIT=1”

Yes and buildx always used buildkit.

The legacy builder does not have a --progress option and buildkit has different output, it shows the running commands only and the commands disappear after that except when they fail.

But it is enough to check the help as I suggested in my previous post and the new help with start with this:

Usage:  docker buildx build [OPTIONS] PATH | URL | -

Start a build

Aliases:
  docker buildx build, docker buildx b

And it tells you that docker build is an alias to docker buildx build

Thanks @rimelek

i have scripts, where i am using “DOCKER_BUILDKIT=1” to use buildx on older docker version (20.10.24)

once i move to latest docker version (24.0.5), i guess DOCKER_BUILDKIT=1 is not required any more. I confirmed that by doing

kvswp@Testubuntu:~/test$ DOCKER_BUILDKIT=0 docker build -t testimg1 .

DEPRECATED: The legacy builder is deprecated and will be removed in a future release.
BuildKit is currently disabled; enable it by removing the DOCKER_BUILDKIT=0
environment-variable.

kvswp@Testubuntu:~/test$ docker build -t testimg2 .
[+] Building 0.2s (7/7) FINISHED docker:default.

The only thing i am unable to figure it out is after removing “docker-buildx-plugin”

kvswp@Testubuntu:/home/vkota/test# sudo apt-get remove docker-buildx-plugin
Reading package lists… Done
Building dependency tree… Done
Reading state information… Done
The following packages will be REMOVED:
docker-buildx-plugin
0 upgraded, 0 newly installed, 1 to remove and 21 not upgraded.
After this operation, 77.9 MB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database … 236104 files and directories currently installed.)
Removing docker-buildx-plugin (0.11.2-1~ubuntu.22.04~jammy) …

I am still getting buildx

kvswp@Testubuntu:~/test$ docker buildx version
GitHub - docker/buildx: Docker CLI plugin for extended build capabilities with BuildKit v0.11.2-desktop.4 b9955a86a20bf0112ebb4f14424bf59fc46ee179