Return process exit code for attach
@@ -1578,6 +1578,15 @@ func (cli *DockerCli) CmdAttach(args ...string) error {
if err := cli.hijack("POST", "/containers/"+cmd.Arg(0)+"/attach?"+v.Encode(), container.Config.Tty, in, cli.out, cli.err, nil); err != nil {
return err
}
+
+ _, status, err := getExitCode(cli, cmd.Arg(0))
+ if err != nil {
+ return err
+ }
+ if status != 0 {
+ return &utils.StatusError{Status: status}
return nil
@@ -66,7 +66,8 @@ To run the daemon with debug output, use ``docker -d -D``
You can detach from the container again (and leave it running) with
``CTRL-c`` (for a quiet exit) or ``CTRL-\`` to get a stacktrace of
-the Docker client when it quits.
+the Docker client when it quits. When you detach from the container's
+process the exit code will be retuned to the client.
To stop a container, use ``docker stop``