diff --git a/command/image/build.go b/command/image/build.go index 7db76a649f..dc18601900 100644 --- a/command/image/build.go +++ b/command/image/build.go @@ -59,6 +59,7 @@ type buildOptions struct { compress bool securityOpt []string networkMode string + squash bool } // NewBuildCommand creates a new `docker build` command @@ -110,6 +111,10 @@ func NewBuildCommand(dockerCli *command.DockerCli) *cobra.Command { command.AddTrustedFlags(flags, true) + if dockerCli.HasExperimental() { + flags.BoolVar(&options.squash, "squash", false, "Squash newly built layers into a single new layer") + } + return cmd } @@ -305,6 +310,7 @@ func runBuild(dockerCli *command.DockerCli, options buildOptions) error { CacheFrom: options.cacheFrom, SecurityOpt: options.securityOpt, NetworkMode: options.networkMode, + Squash: options.squash, } response, err := dockerCli.Client().ImageBuild(ctx, body, buildOptions)