moby--moby/client
Sebastiaan van Stijn 890231f46b
client: container ps: don't set "limit" if none was set
both -1 and 0 are accepted as "no limit", so don't send the
limit option if no limit was set. For simplicity, we're ignoring
values <= 0.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2022-03-31 19:59:17 +02:00
..
testdata
README.md
build_cancel.go
build_prune.go
checkpoint_create.go
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
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: remove wrapResponseError() 2022-03-20 19:04:52 +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
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 client: TestNegotiateAPIVersion(), TestClientRedirect(): use sub-tests 2022-03-07 11:13:52 +01: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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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
container_commit.go
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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
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
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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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 client: container ps: don't set "limit" if none was set 2022-03-31 19:59:17 +02:00
container_list_test.go client: container ps: don't set "limit" if none was set 2022-03-31 19:59:17 +02:00
container_logs.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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
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: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
container_remove_test.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
container_rename.go
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
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
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
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
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
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
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
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
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
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
distribution_inspect_test.go
envvars.go client: add const for environment variables, and document them 2022-03-07 12:35:55 +01:00
errors.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
events.go
events_test.go Merge pull request #42770 from thaJeztah/eventtype_enums 2021-08-28 00:23:56 +09:00
hijack.go
hijack_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
image_build.go
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
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
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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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
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
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
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
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: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
image_remove_test.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
image_save.go
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 client: ImageSearch(): don't send limit if none was specified 2022-03-15 14:53:46 +01: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
image_tag_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
info.go
info_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00
interface.go
interface_experimental.go
interface_stable.go
login.go
network_connect.go
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
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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
network_inspect_test.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
network_list.go
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
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: remove wrapResponseError() 2022-03-20 19:04:52 +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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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: remove wrapResponseError() 2022-03-20 19:04:52 +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
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 client: Ping(): add handling for swarm status headers 2022-03-25 23:57:58 +01:00
ping_test.go client: Ping(): add handling for swarm status headers 2022-03-25 23:57:58 +01:00
plugin_create.go
plugin_disable.go
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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
plugin_list.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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: remove wrapResponseError() 2022-03-20 19:04:52 +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
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
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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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
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: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
service_remove_test.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
service_update.go
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
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
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
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
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
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
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
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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
transport.go
utils.go
version.go
volume_create.go
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 client: remove wrapResponseError() 2022-03-20 19:04:52 +01: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
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
volume_remove.go client: remove wrapResponseError() 2022-03-20 19:04:52 +01:00
volume_remove_test.go refactor: move from io/ioutil to io and os package 2021-08-27 14:56:57 +08:00

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.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.