The Docker CLI
Go to file
Deng Guangxing afb60b86d7 fix typo in client/errors.go comments
Signed-off-by: Deng Guangxing <dengguangxing@huawei.com>
2016-10-08 15:29:32 +08:00
testdata Move engine-api client package 2016-09-07 11:05:58 -07:00
README.md Move /x/net/context to context in docker client README 2016-09-22 18:45:23 +08:00
checkpoint_create.go Move engine-api client package 2016-09-07 11:05:58 -07:00
checkpoint_create_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
checkpoint_delete.go Move engine-api client package 2016-09-07 11:05:58 -07:00
checkpoint_delete_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
checkpoint_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
checkpoint_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
client.go client: remove transport package 2016-09-19 11:19:55 -07:00
client_mock_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
client_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
client_unix.go Move engine-api client package 2016-09-07 11:05:58 -07:00
client_windows.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_attach.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_commit.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_commit_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_copy.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_copy_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_create.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_create_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_diff.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_diff_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_exec.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_exec_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_export.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_export_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_kill.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_kill_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_logs.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_logs_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_pause.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_pause_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_prune.go Add subcommand prune to the container, volume, image and system commands 2016-09-29 07:42:53 -07:00
container_remove.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_remove_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_rename.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_rename_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_resize.go Windows: OCI process struct convergence 2016-09-19 10:34:31 -07:00
container_resize_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_restart.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_restart_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_start.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_start_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_stats.go Windows: stats support 2016-09-16 11:56:15 -07:00
container_stats_test.go Merge pull request #26436 from stevvooe/remove-transport-package 2016-09-20 16:43:56 +02:00
container_stop.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_stop_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_top.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_top_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_unpause.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_unpause_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_update.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_update_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
container_wait.go Move engine-api client package 2016-09-07 11:05:58 -07:00
container_wait_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
disk_usage.go Add DiskUsage method to SystemApiclient 2016-09-29 07:42:53 -07:00
errors.go fix typo in client/errors.go comments 2016-10-08 15:29:32 +08:00
events.go Refactor to new events api 2016-09-22 14:42:06 -04:00
events_test.go Refactor to new events api 2016-09-22 14:42:06 -04:00
hijack.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_build.go Windows: Support credential specs 2016-10-06 09:32:22 -07:00
image_build_test.go Merge pull request #26436 from stevvooe/remove-transport-package 2016-09-20 16:43:56 +02:00
image_create.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_create_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_history.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_history_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_import.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_import_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_load.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_load_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_prune.go Add subcommand prune to the container, volume, image and system commands 2016-09-29 07:42:53 -07:00
image_pull.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_pull_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_push.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_push_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_remove.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_remove_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_save.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_save_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_search.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_search_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_tag.go Move engine-api client package 2016-09-07 11:05:58 -07:00
image_tag_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
info.go Move engine-api client package 2016-09-07 11:05:58 -07:00
info_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
interface.go Add subcommand prune to the container, volume, image and system commands 2016-09-29 07:42:53 -07:00
interface_experimental.go Move engine-api client package 2016-09-07 11:05:58 -07:00
interface_stable.go Move engine-api client package 2016-09-07 11:05:58 -07:00
login.go Move engine-api client package 2016-09-07 11:05:58 -07:00
network_connect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
network_connect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
network_create.go Move engine-api client package 2016-09-07 11:05:58 -07:00
network_create_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
network_disconnect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
network_disconnect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
network_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
network_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
network_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
network_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
network_remove.go Move engine-api client package 2016-09-07 11:05:58 -07:00
network_remove_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
node_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
node_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
node_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
node_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
node_remove.go Move engine-api client package 2016-09-07 11:05:58 -07:00
node_remove_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
node_update.go Move engine-api client package 2016-09-07 11:05:58 -07:00
node_update_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
plugin_disable.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_disable_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
plugin_enable.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_enable_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
plugin_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
plugin_install.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
plugin_push.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_push_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
plugin_remove.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_remove_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
plugin_set.go Move engine-api client package 2016-09-07 11:05:58 -07:00
plugin_set_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
request.go Updated the client/request.go sendClientRequest method to return a PermissionDenied error if the connection failed due to permissions. 2016-10-03 09:02:20 -05:00
request_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
service_create.go Move engine-api client package 2016-09-07 11:05:58 -07:00
service_create_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
service_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
service_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
service_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
service_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
service_remove.go Move engine-api client package 2016-09-07 11:05:58 -07:00
service_remove_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
service_update.go Move engine-api client package 2016-09-07 11:05:58 -07:00
service_update_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
swarm_init.go Move engine-api client package 2016-09-07 11:05:58 -07:00
swarm_init_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
swarm_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
swarm_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
swarm_join.go Move engine-api client package 2016-09-07 11:05:58 -07:00
swarm_join_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
swarm_leave.go Move engine-api client package 2016-09-07 11:05:58 -07:00
swarm_leave_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
swarm_update.go Move engine-api client package 2016-09-07 11:05:58 -07:00
swarm_update_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
task_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
task_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
task_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
task_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
transport.go client: remove transport package 2016-09-19 11:19:55 -07:00
version.go Move engine-api client package 2016-09-07 11:05:58 -07:00
volume_create.go Move engine-api client package 2016-09-07 11:05:58 -07:00
volume_create_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
volume_inspect.go Move engine-api client package 2016-09-07 11:05:58 -07:00
volume_inspect_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
volume_list.go Move engine-api client package 2016-09-07 11:05:58 -07:00
volume_list_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
volume_prune.go Add subcommand prune to the container, volume, image and system commands 2016-09-29 07:42:53 -07:00
volume_remove.go Move engine-api client package 2016-09-07 11:05:58 -07:00
volume_remove_test.go client: remove transport package 2016-09-19 11:19:55 -07:00

README.md

Client

The client package implements a fully featured http client to interact with the Docker engine. It's modeled after the requirements of the Docker engine CLI, but it can also serve other purposes.

Usage

You can use this client package in your applications by creating a new client object. Then use that object to execute operations against the remote server. Follow the example below to see how to list all the containers running in a Docker engine host:

package main

import (
	"fmt"
	"context"

	"github.com/docker/docker/client"
	"github.com/docker/docker/api/types"
)

func main() {
	defaultHeaders := map[string]string{"User-Agent": "engine-api-cli-1.0"}
	cli, err := client.NewClient("unix:///var/run/docker.sock", "v1.22", nil, defaultHeaders)
	if err != nil {
		panic(err)
	}

	options := types.ContainerListOptions{All: true}
	containers, err := cli.ContainerList(context.Background(), options)
	if err != nil {
		panic(err)
	}

	for _, c := range containers {
		fmt.Println(c.ID)
	}
}