From b60d6471721bc914dca179a4372303d41913cc4c Mon Sep 17 00:00:00 2001 From: unclejack Date: Mon, 19 May 2014 21:01:55 +0300 Subject: [PATCH] default to deleting images via the remote api This makes the remote API version 1.12 and newer default to automatically deleting intermediate containers when the build has succeedeed. Docker-DCO-1.1-Signed-off-by: Cristian Staretu (github: unclejack) --- api/client/commands.go | 2 ++ api/server/server.go | 3 +++ docs/sources/reference/api/docker_remote_api_v1.12.md | 2 +- 3 files changed, 6 insertions(+), 1 deletion(-) 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: