rename.go 703 B

123456789101112131415161718192021222324252627
  1. package client
  2. import (
  3. "fmt"
  4. Cli "github.com/docker/docker/cli"
  5. flag "github.com/docker/docker/pkg/mflag"
  6. )
  7. // CmdRename renames a container.
  8. //
  9. // Usage: docker rename OLD_NAME NEW_NAME
  10. func (cli *DockerCli) CmdRename(args ...string) error {
  11. cmd := Cli.Subcmd("rename", []string{"OLD_NAME NEW_NAME"}, "Rename a container", true)
  12. cmd.Require(flag.Exact, 2)
  13. cmd.ParseFlags(args, true)
  14. oldName := cmd.Arg(0)
  15. newName := cmd.Arg(1)
  16. if _, _, err := readBody(cli.call("POST", fmt.Sprintf("/containers/%s/rename?name=%s", oldName, newName), nil, nil)); err != nil {
  17. fmt.Fprintf(cli.err, "%s\n", err)
  18. return fmt.Errorf("Error: failed to rename container named %s", oldName)
  19. }
  20. return nil
  21. }