Files
moby/client
Matthieu MOREL 96f8c6395e chore: enable use-any rule from revive
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2025-08-08 17:07:07 +02:00
..
2025-08-02 17:12:05 +02:00
2016-09-07 11:05:58 -07:00
2025-07-21 09:30:05 -07:00
2025-08-02 17:12:05 +02:00
2025-08-05 09:11:21 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-05 09:11:21 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-05 09:11:21 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-05 09:11:21 +02:00
2025-08-05 09:11:21 +02:00
2025-08-05 09:11:21 +02:00
2025-07-21 09:30:05 -07:00
2025-08-08 01:16:53 +02:00
2025-08-05 09:11:21 +02:00
2025-08-02 17:12:05 +02:00
2025-08-05 09:11:21 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00
2025-08-02 17:12:05 +02:00

Go client for the Docker Engine API

PkgGoDev GitHub License Go Report Card OpenSSF Scorecard OpenSSF Best Practices

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 or pushing images, etc.

For example, to list all containers (the equivalent of docker ps --all):

package main

import (
	"context"
	"fmt"

	"github.com/moby/moby/api/types/container"
	"github.com/moby/moby/client"
)

func main() {
	apiClient, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
	if err != nil {
		panic(err)
	}
	defer apiClient.Close()

	containers, err := apiClient.ContainerList(context.Background(), container.ListOptions{All: true})
	if err != nil {
		panic(err)
	}

	for _, ctr := range containers {
		fmt.Printf("%s %s (status: %s)\n", ctr.ID, ctr.Image, ctr.Status)
	}
}

Full documentation is available on pkg.go.dev.