When using BuildKit with Docker, how do I see the output of RUN commands?

DockerDocker Buildkit

Docker Problem Overview


When building Docker images with DOCKER_BUILDKIT=1, there is a very cool progress indicator but no command output. How do I see the command output to debug my build?

Docker Solutions


Solution 1 - Docker

Have you tried --progress=plain?

Example:

FROM alpine
RUN ps aux

Relative output of DOCKER_BUILDKIT=1 docker build --progress=plain -t test_buildkit .:

#5 [2/2] RUN ps aux
#5       digest: sha256:e2e4ae1e7db9bc398cbcb5b0e93b137795913d2b626babb0f148a60017379d86
#5         name: "[2/2] RUN ps aux"
#5      started: 2019-04-19 09:02:58.922035874 +0000 UTC
#5 0.693 PID   USER     TIME  COMMAND
#5 0.693     1 root      0:00 ps aux
#5    completed: 2019-04-19 09:02:59.721490002 +0000 UTC
#5     duration: 799.454128ms

ļ‘‰ Also, check the very useful answer by @Cocowalla below about BUILDKIT_PROGRESS=plain

Solution 2 - Docker

As well as using --progress=plain on the command line, you can also set an environment variable:

BUILDKIT_PROGRESS=plain

I find this particularly useful for CI builds, where I always want the full log.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionjoeforkerView Question on Stackoverflow
Solution 1 - DockertgogosView Answer on Stackoverflow
Solution 2 - DockerCocowallaView Answer on Stackoverflow