feat(commands): some common commands
This commit is contained in:
@@ -0,0 +1,119 @@
|
||||
package commands
|
||||
|
||||
import (
|
||||
"github.com/versenilvis/iris/commands/core"
|
||||
)
|
||||
|
||||
func init() {
|
||||
core.Register(&core.Spec{
|
||||
Name: "docker",
|
||||
Description: "container engine",
|
||||
Subcommands: []core.Subcommand{
|
||||
{
|
||||
Name: "ps",
|
||||
Description: "list containers",
|
||||
Options: []core.Option{
|
||||
{Name: "-a", Description: "show all"},
|
||||
{Name: "-q", Description: "only show IDs"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "build",
|
||||
Description: "build image",
|
||||
Options: []core.Option{
|
||||
{Name: "-t", Description: "tag name"},
|
||||
{Name: "-f", Description: "dockerfile path"},
|
||||
{Name: "--no-cache", Description: "no build cache"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "run",
|
||||
Description: "run container",
|
||||
Options: []core.Option{
|
||||
{Name: "-d", Description: "detached mode"},
|
||||
{Name: "-p", Description: "port mapping"},
|
||||
{Name: "-v", Description: "volume mount"},
|
||||
{Name: "--rm", Description: "auto remove"},
|
||||
{Name: "--name", Description: "container name"},
|
||||
{Name: "-it", Description: "interactive tty"},
|
||||
{Name: "-e", Description: "set env variable"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "pull",
|
||||
Description: "pull image",
|
||||
},
|
||||
{
|
||||
Name: "push",
|
||||
Description: "push image",
|
||||
},
|
||||
{
|
||||
Name: "exec",
|
||||
Description: "exec in container",
|
||||
Options: []core.Option{
|
||||
{Name: "-it", Description: "interactive tty"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "stop",
|
||||
Description: "stop container",
|
||||
},
|
||||
{
|
||||
Name: "rm",
|
||||
Description: "remove container",
|
||||
Options: []core.Option{
|
||||
{Name: "-f", Description: "force remove"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "rmi",
|
||||
Description: "remove image",
|
||||
},
|
||||
{
|
||||
Name: "images",
|
||||
Description: "list images",
|
||||
},
|
||||
{
|
||||
Name: "logs",
|
||||
Description: "view logs",
|
||||
Options: []core.Option{
|
||||
{Name: "-f", Description: "follow output"},
|
||||
{Name: "--tail", Description: "last n lines"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "compose",
|
||||
Description: "multi-container",
|
||||
Subcommands: []core.Subcommand{
|
||||
{Name: "up", Description: "start services"},
|
||||
{Name: "down", Description: "stop services"},
|
||||
{Name: "build", Description: "build services"},
|
||||
{Name: "logs", Description: "view logs"},
|
||||
{Name: "ps", Description: "list services"},
|
||||
{Name: "exec", Description: "execute command"},
|
||||
{Name: "restart", Description: "restart services"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "network",
|
||||
Description: "manage networks",
|
||||
Subcommands: []core.Subcommand{
|
||||
{Name: "ls", Description: "list networks"},
|
||||
{Name: "create", Description: "create network"},
|
||||
{Name: "rm", Description: "remove network"},
|
||||
{Name: "inspect", Description: "show details"},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "volume",
|
||||
Description: "manage volumes",
|
||||
Subcommands: []core.Subcommand{
|
||||
{Name: "ls", Description: "list volumes"},
|
||||
{Name: "create", Description: "create volume"},
|
||||
{Name: "rm", Description: "remove volume"},
|
||||
{Name: "prune", Description: "remove unused"},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user