moby--moby/client
Harrison Turton 77162b39da Update documentation for ServiceUpdate
Currently, the behaviour for the version field in ServiceUpdate()
is vague. Without an correct version number, users are unable to
successfully run ServiceUpdate(), which is a pretty critical method
for scaling services (for example). I've just added an extra sentence
explaining what the version number is for, and where to find it.

Signed-off-by: Harrison Turton <harrisonturton@gmail.com>
2018-10-23 13:16:51 +11:00
..
testdata
README.md
build_cancel.go Remove stray uses of "golang.org/x/net/context" 2018-07-13 09:53:36 +02:00
build_prune.go builder: add prune options to the API 2018-09-01 22:01:17 +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: dial tls on Dialer if tls config is set 2018-09-04 17:43:33 -07:00
client_mock_test.go
client_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
client_unix.go
client_windows.go
config_create.go
config_create_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
config_inspect.go
config_inspect_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
config_list.go
config_list_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
config_remove.go
config_remove_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
config_update.go
config_update_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
container_attach.go
container_commit.go
container_commit_test.go
container_copy.go
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 Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
container_pause.go
container_pause_test.go
container_prune.go
container_prune_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
container_remove.go
container_remove_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
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
container_wait_test.go
disk_usage.go
disk_usage_test.go
distribution_inspect.go
distribution_inspect_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
errors.go
events.go
events_test.go
hijack.go client: add WithDialContext() and client.Dialer() 2018-07-28 23:35:47 +09:00
hijack_test.go Remove stray uses of "golang.org/x/net/context" 2018-07-13 09:53:36 +02:00
image_build.go api: Change Platform field back to string (temporary workaround) 2018-07-03 22:33:42 +00: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 Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
image_pull.go
image_pull_test.go
image_push.go
image_push_test.go
image_remove.go
image_remove_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
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 builder: add prune options to the API 2018-09-01 22:01:17 +00: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
network_inspect_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
network_list.go
network_list_test.go
network_prune.go
network_prune_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02: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 add optional fields in daemon.json to enable buildkit 2018-08-19 14:58:23 -07:00
ping_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02: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
request.go Use net/http instead of x/ctxhttp 2018-10-16 09:44:53 -07:00
request_test.go client: use io.LimitedReader for reading HTTP error 2018-10-11 01:37:39 +09:00
secret_create.go
secret_create_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
secret_inspect.go
secret_inspect_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
secret_list.go
secret_list_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
secret_remove.go
secret_remove_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
secret_update.go
secret_update_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
service_create.go
service_create_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
service_inspect.go
service_inspect_test.go
service_list.go
service_list_test.go
service_logs.go
service_logs_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
service_remove.go
service_remove_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
service_update.go Update documentation for ServiceUpdate 2018-10-23 13:16:51 +11:00
service_update_test.go
session.go client: add WithDialContext() and client.Dialer() 2018-07-28 23:35:47 +09:00
swarm_get_unlock_key.go
swarm_get_unlock_key_test.go Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02: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
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 Update tests to use gotest.tools 👼 2018-06-13 09:04:30 +02:00
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.