moby/client
Sebastiaan van Stijn 5979d6e7e3
client: add const for environment variables, and document them
This adds consts for the environment variables that are supported
by the client. These environment variables are unlikely to change,
or at least, unlikely to be removed, but having consts allows for
them to be documented.

I did not change all occurrences of these variables to use the const,
as they're used in various tests, and it's ok to use a fixture for
those, but it's nice to have a const available for (external) consumers
of the client package, and to have their purpose (and caveats)
documented in the code.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-03-07 12:35:55 +01:00
..
testdata Move engine-api client package 2016-09-07 11:05:58 -07:00
build_cancel.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
build_prune.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
checkpoint_create.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
checkpoint_create_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
checkpoint_delete.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
checkpoint_delete_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
checkpoint_list.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
checkpoint_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
client.go client: add const for environment variables, and document them 2022-03-07 12:35:55 +01:00
client_deprecated.go Move deprecated client constructors to a separate file 2019-01-21 15:27:52 +01:00
client_mock_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
client_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
client_unix.go client: add const for environment variables, and document them 2022-03-07 12:35:55 +01:00
client_windows.go client: add const for environment variables, and document them 2022-03-07 12:35:55 +01:00
config_create.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
config_create_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
config_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
config_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
config_list.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
config_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
config_remove.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
config_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
config_update.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
config_update_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_attach.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_commit.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
container_commit_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_copy.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
container_copy_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_create.go client: remove containerd "platform" dependency 2021-07-29 23:32:46 +02:00
container_create_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_diff.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
container_diff_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_exec.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
container_exec_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_export.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_export_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_kill.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_kill_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_list.go fix nolint comments for SA1019: filters.ToParamWithVersion is deprecated 2019-10-18 00:45:33 +02:00
container_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_logs.go Improve GetTimestamp parsing 2018-05-20 13:07:17 +02:00
container_logs_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_pause.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_pause_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_prune.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
container_prune_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_remove.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
container_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_rename.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_rename_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_resize.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_resize_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_restart.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
container_restart_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_start.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_start_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_stats.go Add stats options to not prime the stats 2020-02-28 09:54:37 -08:00
container_stats_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_stop.go Merge pull request #36874 from kolyshkin/stop-timeout 2018-05-30 13:38:42 -04:00
container_stop_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_top.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
container_top_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_unpause.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
container_unpause_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_update.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
container_update_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
container_wait.go client.ContainerWait(): don't send empty "condition" query parameter 2022-02-14 21:47:53 +01:00
container_wait_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
disk_usage.go API,daemon: support type URL parameter to /system/df 2021-07-27 12:17:45 +02:00
disk_usage_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
distribution_inspect.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
distribution_inspect_test.go bump gotest.tools v3.0.1 for compatibility with Go 1.14 2020-02-11 00:06:42 +01:00
envvars.go client: add const for environment variables, and document them 2022-03-07 12:35:55 +01:00
errors.go Replace errors.Cause() with errors.Is() / errors.As() 2020-04-29 00:28:41 +02:00
events.go fix nolint comments for SA1019: filters.ToParamWithVersion is deprecated 2019-10-18 00:45:33 +02:00
events_test.go Merge pull request #42770 from thaJeztah/eventtype_enums 2021-08-28 00:23:56 +09:00
hijack.go fix nolint comments for SA1019: filters.ToParamWithVersion is deprecated 2019-10-18 00:45:33 +02:00
hijack_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_build.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
image_build_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_create.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
image_create_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_history.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
image_history_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_import.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
image_import_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_list.go fix nolint comments for SA1019: filters.ToParamWithVersion is deprecated 2019-10-18 00:45:33 +02:00
image_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_load.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
image_load_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_prune.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
image_prune_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_pull.go Use errdefs for handling errors in client 2019-03-16 00:42:42 +01:00
image_pull_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_push.go client.ImagePush(): default to ":latest" instead of "all tags" 2019-12-10 12:24:14 +01:00
image_push_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_remove.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
image_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_save.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
image_save_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_search.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
image_search_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_tag.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
image_tag_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
info.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
info_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
interface.go API,daemon: support type URL parameter to /system/df 2021-07-27 12:17:45 +02:00
interface_experimental.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
interface_stable.go Add canonical import comment 2018-02-05 16:51:57 -05:00
login.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
network_connect.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
network_connect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
network_create.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
network_create_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
network_disconnect.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
network_disconnect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
network_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
network_inspect_test.go client: use subtests for TestNetworkInspect 2021-08-27 16:56:11 +02:00
network_list.go fix nolint comments for SA1019: filters.ToParamWithVersion is deprecated 2019-10-18 00:45:33 +02:00
network_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
network_prune.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
network_prune_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
network_remove.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
network_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
node_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
node_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
node_list.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
node_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
node_remove.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
node_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
node_update.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
node_update_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
options.go client: add const for environment variables, and document them 2022-03-07 12:35:55 +01:00
options_test.go client: extract FromEnv parts to separate WithXX options 2022-02-10 17:15:40 +01:00
ping.go remove extra space in code comment in ping.go 2020-01-20 00:04:53 -05:00
ping_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_create.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
plugin_disable.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
plugin_disable_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_enable.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
plugin_enable_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_install.go Use errdefs for handling errors in client 2019-03-16 00:42:42 +01:00
plugin_list.go fix nolint comments for SA1019: filters.ToParamWithVersion is deprecated 2019-10-18 00:45:33 +02:00
plugin_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_push.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
plugin_push_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_remove.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
plugin_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_set.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
plugin_set_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
plugin_upgrade.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
README.md Remove use of deprecated client.NewEnvClient() 2019-01-03 22:49:00 +01:00
request.go client: use canonical names for HTTP Headers 2022-03-06 10:49:02 +01:00
request_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
secret_create.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
secret_create_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
secret_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
secret_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
secret_list.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
secret_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
secret_remove.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
secret_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
secret_update.go Fix grammar in client function comments 2021-02-16 10:07:44 -05:00
secret_update_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
service_create.go remove unneeded "digest" alias for "go-digest" 2022-03-04 14:49:42 +01:00
service_create_test.go remove unneeded "digest" alias for "go-digest" 2022-03-04 14:49:42 +01:00
service_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
service_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
service_list.go Add support for sending down service Running and Desired task counts 2019-10-14 10:43:00 -05:00
service_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
service_logs.go Improve GetTimestamp parsing 2018-05-20 13:07:17 +02:00
service_logs_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
service_remove.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
service_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
service_update.go extract logic for resolving image/plugin digest and platform 2020-04-16 21:30:57 +02:00
service_update_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
swarm_get_unlock_key.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
swarm_get_unlock_key_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
swarm_init.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
swarm_init_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
swarm_inspect.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
swarm_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
swarm_join.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
swarm_join_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
swarm_leave.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
swarm_leave_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
swarm_unlock.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
swarm_unlock_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
swarm_update.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
swarm_update_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
task_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
task_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
task_list.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
task_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
task_logs.go Switch from x/net/context -> context 2018-04-23 13:52:44 -07:00
transport.go Add canonical import comment 2018-02-05 16:51:57 -05:00
utils.go Add canonical import comment 2018-02-05 16:51:57 -05:00
version.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
volume_create.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
volume_create_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
volume_inspect.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
volume_inspect_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
volume_list.go fix nolint comments for SA1019: filters.ToParamWithVersion is deprecated 2019-10-18 00:45:33 +02:00
volume_list_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
volume_prune.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
volume_remove.go Client: always call ensureReaderClosed 2019-03-18 15:26:21 +01:00
volume_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00

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.