mirror of https://github.com/docker/cli.git
Merge pull request #3694 from thaJeztah/reference_canonical_aliases
cli: use custom annotation for aliases
This commit is contained in:
commit
4460252b43
10
cli/cobra.go
10
cli/cobra.go
|
@ -31,6 +31,7 @@ func setupCommonRootCommand(rootCmd *cobra.Command) (*cliflags.ClientOptions, *p
|
||||||
opts.Common.InstallFlags(flags)
|
opts.Common.InstallFlags(flags)
|
||||||
|
|
||||||
cobra.AddTemplateFunc("add", func(a, b int) int { return a + b })
|
cobra.AddTemplateFunc("add", func(a, b int) int { return a + b })
|
||||||
|
cobra.AddTemplateFunc("hasAliases", hasAliases)
|
||||||
cobra.AddTemplateFunc("hasSubCommands", hasSubCommands)
|
cobra.AddTemplateFunc("hasSubCommands", hasSubCommands)
|
||||||
cobra.AddTemplateFunc("hasTopCommands", hasTopCommands)
|
cobra.AddTemplateFunc("hasTopCommands", hasTopCommands)
|
||||||
cobra.AddTemplateFunc("hasManagementSubCommands", hasManagementSubCommands)
|
cobra.AddTemplateFunc("hasManagementSubCommands", hasManagementSubCommands)
|
||||||
|
@ -239,6 +240,10 @@ func isPlugin(cmd *cobra.Command) bool {
|
||||||
return cmd.Annotations[pluginmanager.CommandAnnotationPlugin] == "true"
|
return cmd.Annotations[pluginmanager.CommandAnnotationPlugin] == "true"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func hasAliases(cmd *cobra.Command) bool {
|
||||||
|
return len(cmd.Aliases) > 0 || cmd.Annotations["aliases"] != ""
|
||||||
|
}
|
||||||
|
|
||||||
func hasSubCommands(cmd *cobra.Command) bool {
|
func hasSubCommands(cmd *cobra.Command) bool {
|
||||||
return len(operationSubCommands(cmd)) > 0
|
return len(operationSubCommands(cmd)) > 0
|
||||||
}
|
}
|
||||||
|
@ -263,6 +268,9 @@ func hasTopCommands(cmd *cobra.Command) bool {
|
||||||
// formatted as the full command as they're called (contrary to the default
|
// formatted as the full command as they're called (contrary to the default
|
||||||
// Aliases function, which only returns the subcommand).
|
// Aliases function, which only returns the subcommand).
|
||||||
func commandAliases(cmd *cobra.Command) string {
|
func commandAliases(cmd *cobra.Command) string {
|
||||||
|
if cmd.Annotations["aliases"] != "" {
|
||||||
|
return cmd.Annotations["aliases"]
|
||||||
|
}
|
||||||
var parentPath string
|
var parentPath string
|
||||||
if cmd.HasParent() {
|
if cmd.HasParent() {
|
||||||
parentPath = cmd.Parent().CommandPath() + " "
|
parentPath = cmd.Parent().CommandPath() + " "
|
||||||
|
@ -411,7 +419,7 @@ EXPERIMENTAL:
|
||||||
https://docs.docker.com/go/experimental/
|
https://docs.docker.com/go/experimental/
|
||||||
|
|
||||||
{{- end}}
|
{{- end}}
|
||||||
{{- if gt .Aliases 0}}
|
{{- if hasAliases . }}
|
||||||
|
|
||||||
Aliases:
|
Aliases:
|
||||||
{{ commandAliases . }}
|
{{ commandAliases . }}
|
||||||
|
|
|
@ -81,9 +81,18 @@ func TestInvalidPlugin(t *testing.T) {
|
||||||
func TestCommandAliases(t *testing.T) {
|
func TestCommandAliases(t *testing.T) {
|
||||||
root := &cobra.Command{Use: "root"}
|
root := &cobra.Command{Use: "root"}
|
||||||
sub := &cobra.Command{Use: "subcommand", Aliases: []string{"alias1", "alias2"}}
|
sub := &cobra.Command{Use: "subcommand", Aliases: []string{"alias1", "alias2"}}
|
||||||
|
sub2 := &cobra.Command{Use: "subcommand2", Annotations: map[string]string{"aliases": "root foo, root bar"}}
|
||||||
root.AddCommand(sub)
|
root.AddCommand(sub)
|
||||||
|
root.AddCommand(sub2)
|
||||||
|
|
||||||
|
assert.Equal(t, hasAliases(sub), true)
|
||||||
assert.Equal(t, commandAliases(sub), "root subcommand, root alias1, root alias2")
|
assert.Equal(t, commandAliases(sub), "root subcommand, root alias1, root alias2")
|
||||||
|
assert.Equal(t, hasAliases(sub2), true)
|
||||||
|
assert.Equal(t, commandAliases(sub2), "root foo, root bar")
|
||||||
|
|
||||||
|
sub.Annotations = map[string]string{"aliases": "custom alias, custom alias 2"}
|
||||||
|
assert.Equal(t, hasAliases(sub), true)
|
||||||
|
assert.Equal(t, commandAliases(sub), "custom alias, custom alias 2")
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestDecoratedName(t *testing.T) {
|
func TestDecoratedName(t *testing.T) {
|
||||||
|
|
|
@ -55,6 +55,9 @@ func NewAttachCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.container = args[0]
|
opts.container = args[0]
|
||||||
return runAttach(dockerCli, &opts)
|
return runAttach(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container attach, docker attach",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false, func(container types.Container) bool {
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false, func(container types.Container) bool {
|
||||||
return container.State != "paused"
|
return container.State != "paused"
|
||||||
}),
|
}),
|
||||||
|
|
|
@ -37,6 +37,9 @@ func NewCommitCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
}
|
}
|
||||||
return runCommit(dockerCli, &options)
|
return runCommit(dockerCli, &options)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container commit, docker commit",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -101,6 +101,9 @@ func NewCopyCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
}
|
}
|
||||||
return runCopy(dockerCli, opts)
|
return runCopy(dockerCli, opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container cp, docker cp",
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
flags := cmd.Flags()
|
flags := cmd.Flags()
|
||||||
|
|
|
@ -57,6 +57,9 @@ func NewCreateCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
}
|
}
|
||||||
return runCreate(dockerCli, cmd.Flags(), &options, copts)
|
return runCreate(dockerCli, cmd.Flags(), &options, copts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container create, docker create",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ImageNames(dockerCli),
|
ValidArgsFunction: completion.ImageNames(dockerCli),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -27,6 +27,9 @@ func NewDiffCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.container = args[0]
|
opts.container = args[0]
|
||||||
return runDiff(dockerCli, &opts)
|
return runDiff(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container diff, docker diff",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,6 +59,7 @@ func NewExecCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
}),
|
}),
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "2",
|
"category-top": "2",
|
||||||
|
"aliases": "docker container exec, docker exec",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,9 @@ func NewExportCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.container = args[0]
|
opts.container = args[0]
|
||||||
return runExport(dockerCli, opts)
|
return runExport(dockerCli, opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container export, docker export",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -30,6 +30,9 @@ func NewKillCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.containers = args
|
opts.containers = args
|
||||||
return runKill(dockerCli, &opts)
|
return runKill(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container kill, docker kill",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -40,6 +40,7 @@ func NewPsCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
},
|
},
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "3",
|
"category-top": "3",
|
||||||
|
"aliases": "docker container ls, docker container list, docker container ps, docker ps",
|
||||||
},
|
},
|
||||||
ValidArgsFunction: completion.NoComplete,
|
ValidArgsFunction: completion.NoComplete,
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,6 +35,9 @@ func NewLogsCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.container = args[0]
|
opts.container = args[0]
|
||||||
return runLogs(dockerCli, &opts)
|
return runLogs(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container logs, docker logs",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,9 @@ func NewPauseCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.containers = args
|
opts.containers = args
|
||||||
return runPause(dockerCli, &opts)
|
return runPause(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container pause, docker pause",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false, func(container types.Container) bool {
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false, func(container types.Container) bool {
|
||||||
return container.State != "paused"
|
return container.State != "paused"
|
||||||
}),
|
}),
|
||||||
|
|
|
@ -35,6 +35,9 @@ func NewPortCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
}
|
}
|
||||||
return runPort(dockerCli, &opts)
|
return runPort(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container port, docker port",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
return cmd
|
return cmd
|
||||||
|
|
|
@ -30,6 +30,9 @@ func NewRenameCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.newName = args[1]
|
opts.newName = args[1]
|
||||||
return runRename(dockerCli, &opts)
|
return runRename(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container rename, docker rename",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
||||||
}
|
}
|
||||||
return cmd
|
return cmd
|
||||||
|
|
|
@ -34,6 +34,9 @@ func NewRestartCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.timeoutChanged = cmd.Flags().Changed("time")
|
opts.timeoutChanged = cmd.Flags().Changed("time")
|
||||||
return runRestart(dockerCli, &opts)
|
return runRestart(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container restart, docker restart",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,9 @@ func NewRmCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.containers = args
|
opts.containers = args
|
||||||
return runRm(dockerCli, &opts)
|
return runRm(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container rm, docker rm",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -48,6 +48,7 @@ func NewRunCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
ValidArgsFunction: completion.ImageNames(dockerCli),
|
ValidArgsFunction: completion.ImageNames(dockerCli),
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "1",
|
"category-top": "1",
|
||||||
|
"aliases": "docker container run, docker run",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -44,6 +44,9 @@ func NewStartCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.Containers = args
|
opts.Containers = args
|
||||||
return RunStart(dockerCli, &opts)
|
return RunStart(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container start, docker start",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, true, func(container types.Container) bool {
|
ValidArgsFunction: completion.ContainerNames(dockerCli, true, func(container types.Container) bool {
|
||||||
return container.State == "exited" || container.State == "created"
|
return container.State == "exited" || container.State == "created"
|
||||||
}),
|
}),
|
||||||
|
|
|
@ -40,6 +40,9 @@ func NewStatsCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.containers = args
|
opts.containers = args
|
||||||
return runStats(dockerCli, &opts)
|
return runStats(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container stats, docker stats",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -34,6 +34,9 @@ func NewStopCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.timeoutChanged = cmd.Flags().Changed("time")
|
opts.timeoutChanged = cmd.Flags().Changed("time")
|
||||||
return runStop(dockerCli, &opts)
|
return runStop(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container stop, docker stop",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,6 +31,9 @@ func NewTopCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.args = args[1:]
|
opts.args = args[1:]
|
||||||
return runTop(dockerCli, &opts)
|
return runTop(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container top, docker top",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,9 @@ func NewUnpauseCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.containers = args
|
opts.containers = args
|
||||||
return runUnpause(dockerCli, &opts)
|
return runUnpause(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container unpause, docker unpause",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false, func(container types.Container) bool {
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false, func(container types.Container) bool {
|
||||||
return container.State == "paused"
|
return container.State == "paused"
|
||||||
}),
|
}),
|
||||||
|
|
|
@ -49,6 +49,9 @@ func NewUpdateCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
options.nFlag = cmd.Flags().NFlag()
|
options.nFlag = cmd.Flags().NFlag()
|
||||||
return runUpdate(dockerCli, &options)
|
return runUpdate(dockerCli, &options)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container update, docker update",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, true),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -28,6 +28,9 @@ func NewWaitCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.containers = args
|
opts.containers = args
|
||||||
return runWait(dockerCli, &opts)
|
return runWait(dockerCli, &opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker container wait, docker wait",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
ValidArgsFunction: completion.ContainerNames(dockerCli, false),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -107,6 +107,7 @@ func NewBuildCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
},
|
},
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "4",
|
"category-top": "4",
|
||||||
|
"aliases": "docker image build, docker build, docker buildx build, docker builder build",
|
||||||
},
|
},
|
||||||
ValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
|
ValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
|
||||||
return nil, cobra.ShellCompDirectiveFilterDirs
|
return nil, cobra.ShellCompDirectiveFilterDirs
|
||||||
|
|
|
@ -31,6 +31,9 @@ func NewHistoryCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.image = args[0]
|
opts.image = args[0]
|
||||||
return runHistory(dockerCli, opts)
|
return runHistory(dockerCli, opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker image history, docker history",
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
flags := cmd.Flags()
|
flags := cmd.Flags()
|
||||||
|
|
|
@ -36,6 +36,9 @@ func NewImportCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
}
|
}
|
||||||
return runImport(dockerCli, options)
|
return runImport(dockerCli, options)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker image import, docker import",
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
flags := cmd.Flags()
|
flags := cmd.Flags()
|
||||||
|
|
|
@ -39,6 +39,7 @@ func NewImagesCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
},
|
},
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "7",
|
"category-top": "7",
|
||||||
|
"aliases": "docker image ls, docker image list, docker images",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,9 @@ func NewLoadCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, args []string) error {
|
||||||
return runLoad(dockerCli, opts)
|
return runLoad(dockerCli, opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker image load, docker load",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.NoComplete,
|
ValidArgsFunction: completion.NoComplete,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -37,6 +37,7 @@ func NewPullCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
},
|
},
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "5",
|
"category-top": "5",
|
||||||
|
"aliases": "docker image pull, docker pull",
|
||||||
},
|
},
|
||||||
ValidArgsFunction: completion.NoComplete,
|
ValidArgsFunction: completion.NoComplete,
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,6 +38,7 @@ func NewPushCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
},
|
},
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "6",
|
"category-top": "6",
|
||||||
|
"aliases": "docker image push, docker push",
|
||||||
},
|
},
|
||||||
ValidArgsFunction: completion.ImageNames(dockerCli),
|
ValidArgsFunction: completion.ImageNames(dockerCli),
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,6 +29,9 @@ func NewRemoveCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, args []string) error {
|
||||||
return runRemove(dockerCli, opts, args)
|
return runRemove(dockerCli, opts, args)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker image rm, docker image remove, docker rmi",
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
flags := cmd.Flags()
|
flags := cmd.Flags()
|
||||||
|
|
|
@ -28,6 +28,9 @@ func NewSaveCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.images = args
|
opts.images = args
|
||||||
return RunSave(dockerCli, opts)
|
return RunSave(dockerCli, opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker image save, docker save",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ImageNames(dockerCli),
|
ValidArgsFunction: completion.ImageNames(dockerCli),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -27,6 +27,9 @@ func NewTagCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
opts.name = args[1]
|
opts.name = args[1]
|
||||||
return runTag(dockerCli, opts)
|
return runTag(dockerCli, opts)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker image tag, docker tag",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.ImageNames(dockerCli),
|
ValidArgsFunction: completion.ImageNames(dockerCli),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -37,6 +37,9 @@ func NewEventsCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
RunE: func(cmd *cobra.Command, args []string) error {
|
RunE: func(cmd *cobra.Command, args []string) error {
|
||||||
return runEvents(dockerCli, &options)
|
return runEvents(dockerCli, &options)
|
||||||
},
|
},
|
||||||
|
Annotations: map[string]string{
|
||||||
|
"aliases": "docker system events, docker events",
|
||||||
|
},
|
||||||
ValidArgsFunction: completion.NoComplete,
|
ValidArgsFunction: completion.NoComplete,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -57,6 +57,7 @@ func NewInfoCommand(dockerCli command.Cli) *cobra.Command {
|
||||||
},
|
},
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"category-top": "12",
|
"category-top": "12",
|
||||||
|
"aliases": "docker system info, docker info",
|
||||||
},
|
},
|
||||||
ValidArgsFunction: completion.NoComplete,
|
ValidArgsFunction: completion.NoComplete,
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker attach [OPTIONS] CONTAINER
|
||||||
|
|
||||||
Attach local standard input, output, and error streams to a running container
|
Attach local standard input, output, and error streams to a running container
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container attach, docker attach
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--detach-keys string Override the key sequence for detaching a container
|
--detach-keys string Override the key sequence for detaching a container
|
||||||
--help Print usage
|
--help Print usage
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker build [OPTIONS] PATH | URL | -
|
||||||
|
|
||||||
Build an image from a Dockerfile
|
Build an image from a Dockerfile
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image build, docker build, docker buildx build, docker builder build
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--add-host value Add a custom host-to-IP mapping (host:ip) (default [])
|
--add-host value Add a custom host-to-IP mapping (host:ip) (default [])
|
||||||
--build-arg value Set build-time variables (default [])
|
--build-arg value Set build-time variables (default [])
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
|
||||||
|
|
||||||
Create a new image from a container's changes
|
Create a new image from a container's changes
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container commit, docker commit
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --author string Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")
|
-a, --author string Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")
|
||||||
-c, --change value Apply Dockerfile instruction to the created image (default [])
|
-c, --change value Apply Dockerfile instruction to the created image (default [])
|
||||||
|
|
|
@ -17,6 +17,9 @@ and extract it to a directory destination in a container.
|
||||||
Use '-' as the destination to stream a tar archive of a
|
Use '-' as the destination to stream a tar archive of a
|
||||||
container source to stdout.
|
container source to stdout.
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container cp, docker cp
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-L, --follow-link Always follow symbol link in SRC_PATH
|
-L, --follow-link Always follow symbol link in SRC_PATH
|
||||||
-a, --archive Archive mode (copy all uid/gid information)
|
-a, --archive Archive mode (copy all uid/gid information)
|
||||||
|
|
|
@ -13,6 +13,9 @@ Usage: docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
|
||||||
|
|
||||||
Create a new container
|
Create a new container
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container create, docker create
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--add-host value Add a custom host-to-IP mapping (host:ip) (default [])
|
--add-host value Add a custom host-to-IP mapping (host:ip) (default [])
|
||||||
-a, --attach value Attach to STDIN, STDOUT or STDERR (default [])
|
-a, --attach value Attach to STDIN, STDOUT or STDERR (default [])
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker diff CONTAINER
|
||||||
|
|
||||||
Inspect changes to files or directories on a container's filesystem
|
Inspect changes to files or directories on a container's filesystem
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container diff, docker diff
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker events [OPTIONS]
|
||||||
|
|
||||||
Get real time events from the server
|
Get real time events from the server
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker system events, docker events
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-f, --filter value Filter output based on conditions provided (default [])
|
-f, --filter value Filter output based on conditions provided (default [])
|
||||||
--format string Format the output using the given Go template
|
--format string Format the output using the given Go template
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
|
||||||
|
|
||||||
Execute a command in a running container
|
Execute a command in a running container
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container exec, docker exec
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-d, --detach Detached mode: run command in the background
|
-d, --detach Detached mode: run command in the background
|
||||||
--detach-keys Override the key sequence for detaching a container
|
--detach-keys Override the key sequence for detaching a container
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker export [OPTIONS] CONTAINER
|
||||||
|
|
||||||
Export a container's filesystem as a tar archive
|
Export a container's filesystem as a tar archive
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container export, docker export
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
-o, --output string Write to a file, instead of STDOUT
|
-o, --output string Write to a file, instead of STDOUT
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker history [OPTIONS] IMAGE
|
||||||
|
|
||||||
Show the history of an image
|
Show the history of an image
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image history, docker history
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--format string Pretty-print images using a Go template
|
--format string Pretty-print images using a Go template
|
||||||
--help Print usage
|
--help Print usage
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker images [OPTIONS] [REPOSITORY[:TAG]]
|
||||||
|
|
||||||
List images
|
List images
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image ls, docker image list, docker images
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --all Show all images (default hides intermediate images)
|
-a, --all Show all images (default hides intermediate images)
|
||||||
--digests Show digests
|
--digests Show digests
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
|
||||||
|
|
||||||
Import the contents from a tarball to create a filesystem image
|
Import the contents from a tarball to create a filesystem image
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image import, docker import
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-c, --change value Apply Dockerfile instruction to the created image (default [])
|
-c, --change value Apply Dockerfile instruction to the created image (default [])
|
||||||
--help Print usage
|
--help Print usage
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker info [OPTIONS]
|
||||||
|
|
||||||
Display system-wide information
|
Display system-wide information
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker system info, docker info
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-f, --format string Format the output using the given Go template
|
-f, --format string Format the output using the given Go template
|
||||||
--help Print usage
|
--help Print usage
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker kill [OPTIONS] CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Kill one or more running containers
|
Kill one or more running containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container kill, docker kill
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
-s, --signal string Signal to send to the container
|
-s, --signal string Signal to send to the container
|
||||||
|
|
|
@ -12,6 +12,9 @@ Usage: docker load [OPTIONS]
|
||||||
Load an image or repository from a tar archive (even if compressed with gzip,
|
Load an image or repository from a tar archive (even if compressed with gzip,
|
||||||
bzip2, or xz) from a file or STDIN.
|
bzip2, or xz) from a file or STDIN.
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image load, docker load
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
-i, --input string Read from tar archive file, instead of STDIN.
|
-i, --input string Read from tar archive file, instead of STDIN.
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker logs [OPTIONS] CONTAINER
|
||||||
|
|
||||||
Fetch the logs of a container
|
Fetch the logs of a container
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container logs, docker logs
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--details Show extra details provided to logs
|
--details Show extra details provided to logs
|
||||||
-f, --follow Follow log output
|
-f, --follow Follow log output
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker pause CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Pause all processes within one or more containers
|
Pause all processes within one or more containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container pause, docker pause
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker port CONTAINER [PRIVATE_PORT[/PROTO]]
|
||||||
|
|
||||||
List port mappings or a specific mapping for the container
|
List port mappings or a specific mapping for the container
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container port, docker port
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker ps [OPTIONS]
|
||||||
|
|
||||||
List containers
|
List containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container ls, docker container list, docker container ps, docker ps
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --all Show all containers (default shows just running)
|
-a, --all Show all containers (default shows just running)
|
||||||
-f, --filter value Filter output based on conditions provided (default [])
|
-f, --filter value Filter output based on conditions provided (default [])
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker pull [OPTIONS] NAME[:TAG|@DIGEST]
|
||||||
|
|
||||||
Download an image from a registry
|
Download an image from a registry
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image pull, docker pull
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --all-tags Download all tagged images in the repository
|
-a, --all-tags Download all tagged images in the repository
|
||||||
--disable-content-trust Skip image verification (default true)
|
--disable-content-trust Skip image verification (default true)
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker push [OPTIONS] NAME[:TAG]
|
||||||
|
|
||||||
Upload an image to a registry
|
Upload an image to a registry
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image push, docker push
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --all-tags Push all tags of an image to the repository
|
-a, --all-tags Push all tags of an image to the repository
|
||||||
--disable-content-trust Skip image signing (default true)
|
--disable-content-trust Skip image signing (default true)
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker rename CONTAINER NEW_NAME
|
||||||
|
|
||||||
Rename a container
|
Rename a container
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container rename, docker rename
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker restart [OPTIONS] CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Restart one or more containers
|
Restart one or more containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container restart, docker restart
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-s, --signal string Signal to send to the container
|
-s, --signal string Signal to send to the container
|
||||||
-t, --time int Seconds to wait before killing the container
|
-t, --time int Seconds to wait before killing the container
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker rm [OPTIONS] CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Remove one or more containers
|
Remove one or more containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container rm, docker rm
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-f, --force Force the removal of a running container (uses SIGKILL)
|
-f, --force Force the removal of a running container (uses SIGKILL)
|
||||||
--help Print usage
|
--help Print usage
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker rmi [OPTIONS] IMAGE [IMAGE...]
|
||||||
|
|
||||||
Remove one or more images
|
Remove one or more images
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image rm, docker rmi
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-f, --force Force removal of the image
|
-f, --force Force removal of the image
|
||||||
--help Print usage
|
--help Print usage
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
|
||||||
|
|
||||||
Create and run a new container from an image
|
Create and run a new container from an image
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container run, docker run
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--add-host value Add a custom host-to-IP mapping (host:ip) (default [])
|
--add-host value Add a custom host-to-IP mapping (host:ip) (default [])
|
||||||
-a, --attach value Attach to STDIN, STDOUT or STDERR (default [])
|
-a, --attach value Attach to STDIN, STDOUT or STDERR (default [])
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker save [OPTIONS] IMAGE [IMAGE...]
|
||||||
|
|
||||||
Save one or more images to a tar archive (streamed to STDOUT by default)
|
Save one or more images to a tar archive (streamed to STDOUT by default)
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image save, docker save
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
-o, --output string Write to a file, instead of STDOUT
|
-o, --output string Write to a file, instead of STDOUT
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker start [OPTIONS] CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Start one or more stopped containers
|
Start one or more stopped containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container start, docker start
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --attach Attach STDOUT/STDERR and forward signals
|
-a, --attach Attach STDOUT/STDERR and forward signals
|
||||||
--detach-keys string Override the key sequence for detaching a container
|
--detach-keys string Override the key sequence for detaching a container
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker stats [OPTIONS] [CONTAINER...]
|
||||||
|
|
||||||
Display a live stream of container(s) resource usage statistics
|
Display a live stream of container(s) resource usage statistics
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container stats, docker stats
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-a, --all Show all containers (default shows just running)
|
-a, --all Show all containers (default shows just running)
|
||||||
--format string Pretty-print images using a Go template
|
--format string Pretty-print images using a Go template
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Stop one or more running containers
|
Stop one or more running containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container stop, docker stop
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
-s, --signal string Signal to send to the container
|
-s, --signal string Signal to send to the container
|
||||||
-t, --time int Seconds to wait before killing the container
|
-t, --time int Seconds to wait before killing the container
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
|
||||||
|
|
||||||
Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
|
Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker image tag, docker tag
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker top CONTAINER [ps OPTIONS]
|
||||||
|
|
||||||
Display the running processes of a container
|
Display the running processes of a container
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container top, docker top
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker unpause CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Unpause all processes within one or more containers
|
Unpause all processes within one or more containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container unpause, docker unpause
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker update [OPTIONS] CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Update configuration of one or more containers
|
Update configuration of one or more containers
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container update, docker update
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--blkio-weight uint16 Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
|
--blkio-weight uint16 Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
|
||||||
--cpu-period int Limit CPU CFS (Completely Fair Scheduler) period
|
--cpu-period int Limit CPU CFS (Completely Fair Scheduler) period
|
||||||
|
|
|
@ -11,6 +11,9 @@ Usage: docker wait CONTAINER [CONTAINER...]
|
||||||
|
|
||||||
Block until one or more containers stop, then print their exit codes
|
Block until one or more containers stop, then print their exit codes
|
||||||
|
|
||||||
|
Aliases:
|
||||||
|
docker container wait, docker wait
|
||||||
|
|
||||||
Options:
|
Options:
|
||||||
--help Print usage
|
--help Print usage
|
||||||
```
|
```
|
||||||
|
|
Loading…
Reference in New Issue