diff --git a/api/client/commands.go b/api/client/commands.go index cfbedc835a..6c919e1061 100644 --- a/api/client/commands.go +++ b/api/client/commands.go @@ -2187,7 +2187,7 @@ func (cli *DockerCli) CmdCreate(args ...string) error { config, hostConfig, cmd, err := runconfig.Parse(cmd, args) if err != nil { - return err + return &utils.StatusError{StatusCode: 1} } if config.Image == "" { cmd.Usage() @@ -2223,7 +2223,7 @@ func (cli *DockerCli) CmdRun(args ...string) error { config, hostConfig, cmd, err := runconfig.Parse(cmd, args) if err != nil { - return err + return &utils.StatusError{StatusCode: 1} } if config.Image == "" { cmd.Usage() @@ -2511,7 +2511,7 @@ func (cli *DockerCli) CmdExec(args ...string) error { execConfig, err := runconfig.ParseExec(cmd, args) if execConfig.Container == "" || err != nil { - return err + return &utils.StatusError{StatusCode: 1} } stream, _, err := cli.call("POST", "/containers/"+execConfig.Container+"/exec", execConfig, false) diff --git a/pkg/mflag/flag.go b/pkg/mflag/flag.go index 42711b763a..72addae63c 100644 --- a/pkg/mflag/flag.go +++ b/pkg/mflag/flag.go @@ -852,7 +852,11 @@ func Var(value Value, names []string, usage string) { func (f *FlagSet) failf(format string, a ...interface{}) error { err := fmt.Errorf(format, a...) fmt.Fprintln(f.Out(), err) - fmt.Fprintf(f.Out(), "See 'docker %s --help'.\n", f.name) + if os.Args[0] == f.name { + fmt.Fprintf(f.Out(), "See '%s --help'.\n", os.Args[0]) + } else { + fmt.Fprintf(f.Out(), "See '%s %s --help'.\n", os.Args[0], f.name) + } return err } diff --git a/utils/flags.go b/utils/flags.go index d88104b635..fdf57b1b2b 100644 --- a/utils/flags.go +++ b/utils/flags.go @@ -25,7 +25,11 @@ func ParseFlags(cmd *flag.FlagSet, args []string, withHelp bool) error { } if str := cmd.CheckArgs(); str != "" { if withHelp { - str += ". See 'docker " + cmd.Name() + " --help'" + if os.Args[0] == cmd.Name() { + str += ". See '" + os.Args[0] + " " + cmd.Name() + " --help'" + } else { + str += ". See '" + os.Args[0] + " --help'" + } } fmt.Fprintf(cmd.Out(), "docker: %s.\n", str) os.Exit(1)