moby--moby/client
Tõnis Tiigi 8a8416ccbd Merge pull request #29456 from cpuguy83/fix_client_events_race
Fixes a race condition in client events monitoring
2016-12-16 17:07:43 -08:00
..
testdata
README.md Rename Remote API to Engine API 2016-11-22 12:49:38 +00:00
checkpoint_create.go
checkpoint_create_test.go
checkpoint_delete.go
checkpoint_delete_test.go
checkpoint_list.go
checkpoint_list_test.go
client.go client: add accessor methods for client.customHTTPHeaders 2016-11-29 09:02:52 +00:00
client_mock_test.go
client_test.go fix t.Errorf to t.Error in serveral _test.go 2016-11-14 17:54:43 +08:00
client_unix.go
client_windows.go
container_attach.go
container_commit.go
container_commit_test.go expected new_container_id while testing ContainerCommit 2016-11-18 10:21:04 +08:00
container_copy.go
container_copy_test.go Optimize the log info for client test 2016-12-02 03:32:04 +08:00
container_create.go always add but hide experimental cmds and flags 2016-11-08 04:55:27 -08:00
container_create_test.go
container_diff.go
container_diff_test.go
container_exec.go always add but hide experimental cmds and flags 2016-11-08 04:55:27 -08:00
container_exec_test.go
container_export.go
container_export_test.go
container_inspect.go
container_inspect_test.go expected new_container_id while testing ContainerCommit 2016-11-18 10:21:04 +08:00
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 Convert DanglingOnly to Filters for `docker image prune` 2016-12-02 20:08:49 -08:00
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 Tidy GetDockerOS() function 2016-11-09 14:46:53 -08:00
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
container_wait_test.go
disk_usage.go
errors.go Support plugins in `docker inspect` 2016-12-02 11:33:29 -08:00
events.go Fixes a race condition in client events monitoring 2016-12-16 10:11:53 -05:00
events_test.go
hijack.go
image_build.go Tidy GetDockerOS() function 2016-11-09 14:46:53 -08:00
image_build_test.go Fix processing of unset build-args during build 2016-12-07 07:41:55 -08:00
image_create.go
image_create_test.go
image_history.go
image_history_test.go
image_import.go
image_import_test.go expected new_container_id while testing ContainerCommit 2016-11-18 10:21:04 +08:00
image_inspect.go
image_inspect_test.go
image_list.go Fixes ImageList to be retro-compatible with older API 2016-11-28 22:15:50 +01:00
image_list_test.go Fixes ImageList to be retro-compatible with older API 2016-11-28 22:15:50 +01:00
image_load.go
image_load_test.go
image_prune.go Convert DanglingOnly to Filters for `docker image prune` 2016-12-02 20:08:49 -08:00
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 api/types/container,client: gofmt 2016-12-05 17:00:36 +02:00
image_tag.go
image_tag_test.go
info.go
info_test.go api: types: keep info.SecurityOptions a string slice 2016-11-19 13:21:16 +01:00
interface.go Convert DanglingOnly to Filters for `docker image prune` 2016-12-02 20:08:49 -08:00
interface_experimental.go move plugins out of experimental 2016-11-10 15:51:32 -08:00
interface_stable.go
login.go Fix the inconsistent function name for client 2016-12-02 04:18:02 +08:00
network_connect.go
network_connect_test.go
network_create.go
network_create_test.go
network_disconnect.go
network_disconnect_test.go
network_inspect.go
network_inspect_test.go expected new_container_id while testing ContainerCommit 2016-11-18 10:21:04 +08:00
network_list.go
network_list_test.go
network_prune.go Convert DanglingOnly to Filters for `docker image prune` 2016-12-02 20:08:49 -08:00
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
ping.go always add but hide experimental cmds and flags 2016-11-08 04:55:27 -08:00
plugin_create.go Add plugin create functionality. 2016-11-09 15:23:03 -08:00
plugin_disable.go
plugin_disable_test.go
plugin_enable.go Add HTTP client timeout. 2016-11-21 13:11:40 -08:00
plugin_enable_test.go Add HTTP client timeout. 2016-11-21 13:11:40 -08:00
plugin_inspect.go Merge pull request #28963 from vieux/refactor_plugin_install 2016-12-05 12:00:29 -08:00
plugin_inspect_test.go
plugin_install.go refactor plugin install 2016-12-02 15:23:08 -08:00
plugin_list.go
plugin_list_test.go
plugin_push.go
plugin_push_test.go Optimize the log info for client test 2016-12-02 03:32:04 +08:00
plugin_remove.go
plugin_remove_test.go expected new_container_id while testing ContainerCommit 2016-11-18 10:21:04 +08:00
plugin_set.go
plugin_set_test.go
request.go Fix the inconsistent function name for client 2016-12-02 04:18:02 +08:00
request_test.go
secret_create.go update secret create url for consistency 2016-11-18 10:18:21 +08:00
secret_create_test.go update secret create url for consistency 2016-11-18 10:18:21 +08:00
secret_inspect.go secrets: secret management for swarm 2016-11-09 14:27:43 -05:00
secret_inspect_test.go secrets: secret management for swarm 2016-11-09 14:27:43 -05:00
secret_list.go review updates 2016-11-09 14:27:45 -05:00
secret_list_test.go review updates 2016-11-09 14:27:45 -05:00
secret_remove.go secrets: secret management for swarm 2016-11-09 14:27:43 -05:00
secret_remove_test.go secrets: secret management for swarm 2016-11-09 14:27:43 -05:00
service_create.go
service_create_test.go
service_inspect.go
service_inspect_test.go
service_list.go
service_list_test.go
service_logs.go api: Service Logs support 2016-11-10 13:46:02 -08:00
service_logs_test.go api: Service Logs support 2016-11-10 13:46:02 -08:00
service_remove.go
service_remove_test.go
service_update.go Return warnings from service create and service update when digest pinning fails 2016-11-18 09:31:31 -08:00
service_update_test.go Return warnings from service create and service update when digest pinning fails 2016-11-18 09:31:31 -08:00
swarm_get_unlock_key.go Revise swarm init/update flags, add unlocking capability 2016-11-09 16:09:00 -08:00
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 Add support for swarm init lock and swarm unlock 2016-11-09 16:09:00 -08:00
swarm_update.go Add unlock key rotation 2016-11-09 16:09:01 -08:00
swarm_update_test.go
task_inspect.go
task_inspect_test.go
task_list.go
task_list_test.go
transport.go
utils.go Convert DanglingOnly to Filters for `docker image prune` 2016-12-02 20:08:49 -08:00
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 Convert DanglingOnly to Filters for `docker image prune` 2016-12-02 20:08:49 -08:00
volume_remove.go always add but hide experimental cmds and flags 2016-11-08 04:55:27 -08:00
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.