Signed-off-by: Sebastiaan van Stijn <github@gone.nl> (cherry picked from commit c8ff5ecc091278520a890ce58ed891ec354bf6d9) Signed-off-by: Sebastiaan van Stijn <github@gone.nl> Upstream-commit: b9102e2a6b4bb79e080e9ce9d46046532df6f152 Component: engine
898 B
898 B
Go client for the Docker Engine API
The docker command uses this package to communicate with the daemon. It can also be used by your own Go applications to do anything the command-line interface does – running containers, pulling images, managing swarms, etc.
For example, to list running containers (the equivalent of docker ps):
package main
import (
"context"
"fmt"
"github.com/docker/docker/api/types"
"github.com/docker/docker/client"
)
func main() {
cli, err := client.NewClientWithOpts(client.FromEnv)
if err != nil {
panic(err)
}
containers, err := cli.ContainerList(context.Background(), types.ContainerListOptions{})
if err != nil {
panic(err)
}
for _, container := range containers {
fmt.Printf("%s %s\n", container.ID[:10], container.Image)
}
}