diff --git a/api/client/commands.go b/api/client/commands.go index 7f4288ec2b..430613fde8 100644 --- a/api/client/commands.go +++ b/api/client/commands.go @@ -198,6 +198,8 @@ func (cli *DockerCli) CmdBuild(args ...string) error { } if *rm { v.Set("rm", "1") + } else { + v.Set("rm", "0") } if *forceRm { diff --git a/api/server/server.go b/api/server/server.go index 0ac57471af..1c620b3c96 100644 --- a/api/server/server.go +++ b/api/server/server.go @@ -903,8 +903,11 @@ func postBuild(eng *engine.Engine, version version.Version, w http.ResponseWrite } else { job.Stdout.Add(utils.NewWriteFlusher(w)) } + if r.FormValue("forcerm") == "1" && version.GreaterThanOrEqualTo("1.12") { job.Setenv("rm", "1") + } else if r.FormValue("rm") == "" && version.GreaterThanOrEqualTo("1.12") { + job.Setenv("rm", "1") } else { job.Setenv("rm", r.FormValue("rm")) } diff --git a/docs/sources/reference/api/docker_remote_api_v1.12.md b/docs/sources/reference/api/docker_remote_api_v1.12.md index d2b7f8f908..188d4fe0a2 100644 --- a/docs/sources/reference/api/docker_remote_api_v1.12.md +++ b/docs/sources/reference/api/docker_remote_api_v1.12.md @@ -1063,7 +1063,7 @@ Build an image from Dockerfile via stdin the resulting image in case of success - **q** – suppress verbose build output - **nocache** – do not use the cache when building the image - - **rm** - remove intermediate containers after a successful build + - **rm** - remove intermediate containers after a successful build (default behavior) - **forcerm - always remove intermediate containers (includes rm) Request Headers: