1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00
moby--moby/client
Sebastiaan van Stijn 5f9f41018e
Merge pull request #40238 from Toasterson/patch-1
Allow client consumers like traefik to compile on illumos
2019-12-12 21:11:29 +01:00
..
testdata
build_cancel.go
build_prune.go
checkpoint_create.go
checkpoint_create_test.go
checkpoint_delete.go
checkpoint_delete_test.go
checkpoint_list.go
checkpoint_list_test.go
client.go
client_deprecated.go
client_mock_test.go
client_test.go
client_unix.go
client_windows.go
config_create.go
config_create_test.go
config_inspect.go
config_inspect_test.go
config_list.go
config_list_test.go
config_remove.go
config_remove_test.go
config_update.go
config_update_test.go
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
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
container_wait_test.go
disk_usage.go
disk_usage_test.go
distribution_inspect.go
distribution_inspect_test.go
errors.go
events.go
events_test.go
hijack.go
hijack_test.go
image_build.go
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
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
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
options.go
options_test.go
ping.go
ping_test.go
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
README.md
request.go
request_test.go
secret_create.go
secret_create_test.go
secret_inspect.go
secret_inspect_test.go
secret_list.go
secret_list_test.go
secret_remove.go
secret_remove_test.go
secret_update.go
secret_update_test.go
service_create.go
service_create_test.go
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
service_update_test.go
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

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)
	}
}

Full documentation is available on GoDoc.