The Docker CLI
Go to file
qudongfang 9403a5b63e ensures that transport.Client is closed while using cli.NewClient with *http.Client = nil.
Signed-off-by: qudongfang <qudongfang@gmail.com>
2016-09-24 14:32:50 +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 ensures that transport.Client is closed while using cli.NewClient with *http.Client = nil. 2016-09-24 14:32:50 +08:00
client_mock_test.go client: remove transport package 2016-09-19 11:19:55 -07:00
client_test.go ensures that transport.Client is closed while using cli.NewClient with *http.Client = nil. 2016-09-24 14:32:50 +08: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_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
errors.go Move engine-api client package 2016-09-07 11:05:58 -07:00
events.go Move engine-api client package 2016-09-07 11:05:58 -07:00
events_test.go Merge pull request #26436 from stevvooe/remove-transport-package 2016-09-20 16:43:56 +02:00
hijack.go client: remove transport package 2016-09-19 11:19:55 -07:00
image_build.go Windows: stats support 2016-09-16 11:56:15 -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_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 Windows: stats support 2016-09-16 11:56:15 -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 client: remove transport package 2016-09-19 11:19:55 -07: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_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)
	}
}