moby--moby/client
Victor Vieux 45cad73ea8 Merge pull request #33887 from thaJeztah/update-version-error
Fix NewVersionError() for clients using default version
2017-07-12 15:24:00 +02:00
..
session add test for filesync path filtering and testutil helper 2017-06-28 09:12:36 -07:00
testdata
README.md
build_prune.go Implement incremental file sync using client session 2017-06-22 11:52:35 -07:00
checkpoint_create.go
checkpoint_create_test.go
checkpoint_delete.go
checkpoint_delete_test.go
checkpoint_list.go
checkpoint_list_test.go
client.go Spelling fixes 2017-07-03 13:13:09 -07:00
client_mock_test.go
client_test.go pull client API version negotiation out of the CLI and into the client 2017-06-20 22:58:16 -07:00
client_unix.go
client_windows.go
config_create.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_create_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_inspect.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_inspect_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_list.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_list_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_remove.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_remove_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_update.go Add API version checks to client 2017-06-10 01:57:55 +02:00
config_update_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
container_attach.go
container_commit.go
container_commit_test.go
container_copy.go Merge pull request #33467 from bschwind/copy-documentation 2017-06-24 00:19:51 -07:00
container_copy_test.go
container_create.go
container_create_test.go
container_diff.go
container_diff_test.go
container_exec.go
container_exec_test.go
container_export.go
container_export_test.go
container_inspect.go
container_inspect_test.go
container_kill.go
container_kill_test.go
container_list.go
container_list_test.go
container_logs.go
container_logs_test.go
container_pause.go
container_pause_test.go
container_prune.go
container_prune_test.go
container_remove.go
container_remove_test.go
container_rename.go
container_rename_test.go
container_resize.go
container_resize_test.go
container_restart.go
container_restart_test.go
container_start.go
container_start_test.go
container_stats.go
container_stats_test.go
container_stop.go
container_stop_test.go
container_top.go
container_top_test.go
container_unpause.go
container_unpause_test.go
container_update.go
container_update_test.go
container_wait.go Spelling fixes 2017-07-03 13:13:09 -07:00
container_wait_test.go
disk_usage.go
disk_usage_test.go
distribution_inspect.go Add API version checks to client 2017-06-10 01:57:55 +02:00
distribution_inspect_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
errors.go Fix NewVersionError() for clients using default version 2017-06-29 22:22:32 -07:00
events.go
events_test.go
hijack.go Add long-running client session endpoint 2017-06-22 11:22:41 -07:00
image_build.go Add long-running client session endpoint 2017-06-22 11:22:41 -07:00
image_build_test.go
image_create.go
image_create_test.go
image_history.go
image_history_test.go
image_import.go
image_import_test.go
image_inspect.go
image_inspect_test.go
image_list.go
image_list_test.go
image_load.go
image_load_test.go
image_prune.go
image_prune_test.go
image_pull.go
image_pull_test.go
image_push.go
image_push_test.go
image_remove.go
image_remove_test.go
image_save.go
image_save_test.go
image_search.go
image_search_test.go
image_tag.go
image_tag_test.go
info.go
info_test.go
interface.go Implement incremental file sync using client session 2017-06-22 11:52:35 -07:00
interface_experimental.go
interface_stable.go
login.go
network_connect.go
network_connect_test.go
network_create.go
network_create_test.go
network_disconnect.go
network_disconnect_test.go
network_inspect.go Add `scope` filter in `/networks/<id>` 2017-06-12 09:54:25 -07:00
network_inspect_test.go Add `scope` filter in `/networks/<id>` 2017-06-12 09:54:25 -07:00
network_list.go
network_list_test.go
network_prune.go
network_prune_test.go
network_remove.go
network_remove_test.go
node_inspect.go
node_inspect_test.go
node_list.go
node_list_test.go
node_remove.go
node_remove_test.go
node_update.go
node_update_test.go
parse_logs.go
parse_logs_test.go
ping.go Set ping version even on error 2017-06-29 12:42:14 -04:00
ping_test.go Set ping version even on error 2017-06-29 12:42:14 -04:00
plugin_create.go
plugin_disable.go
plugin_disable_test.go
plugin_enable.go
plugin_enable_test.go
plugin_inspect.go
plugin_inspect_test.go
plugin_install.go
plugin_list.go
plugin_list_test.go
plugin_push.go
plugin_push_test.go
plugin_remove.go
plugin_remove_test.go
plugin_set.go
plugin_set_test.go
plugin_upgrade.go Add API version checks to client 2017-06-10 01:57:55 +02:00
request.go Set ping version even on error 2017-06-29 12:42:14 -04:00
request_test.go
secret_create.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_create_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_inspect.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_inspect_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_list.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_list_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_remove.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_remove_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_update.go Add API version checks to client 2017-06-10 01:57:55 +02:00
secret_update_test.go Add API version checks to client 2017-06-10 01:57:55 +02:00
service_create.go Make plugin emit strongly typed, consumable events 2017-07-06 14:26:06 -04:00
service_create_test.go Make plugin emit strongly typed, consumable events 2017-07-06 14:26:06 -04:00
service_inspect.go
service_inspect_test.go
service_list.go
service_list_test.go
service_logs.go
service_logs_test.go
service_remove.go
service_remove_test.go
service_update.go Make plugin emit strongly typed, consumable events 2017-07-06 14:26:06 -04:00
service_update_test.go
session.go Add long-running client session endpoint 2017-06-22 11:22:41 -07:00
swarm_get_unlock_key.go
swarm_get_unlock_key_test.go
swarm_init.go
swarm_init_test.go
swarm_inspect.go
swarm_inspect_test.go
swarm_join.go
swarm_join_test.go
swarm_leave.go
swarm_leave_test.go
swarm_unlock.go
swarm_unlock_test.go
swarm_update.go
swarm_update_test.go
task_inspect.go
task_inspect_test.go
task_list.go
task_list_test.go
task_logs.go
transport.go
utils.go
version.go
volume_create.go
volume_create_test.go
volume_inspect.go
volume_inspect_test.go
volume_list.go
volume_list_test.go
volume_prune.go
volume_remove.go
volume_remove_test.go

README.md

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.NewEnvClient()
	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)
	}
}

Full documentation is available on GoDoc.