The Docker CLI
Go to file
Sebastiaan van Stijn e0ba392319
update to go1.20.10
go1.20.10 (released 2023-10-10) includes a security fix to the net/http package.
See the Go 1.20.10 milestone on our issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.20.10+label%3ACherryPickApproved

full diff: https://github.com/golang/go/compare/go1.20.9...go1.20.10

From the security mailing:

[security] Go 1.21.3 and Go 1.20.10 are released

Hello gophers,

We have just released Go versions 1.21.3 and 1.20.10, minor point releases.

These minor releases include 1 security fixes following the security policy:

- net/http: rapid stream resets can cause excessive work

  A malicious HTTP/2 client which rapidly creates requests and
  immediately resets them can cause excessive server resource consumption.
  While the total number of requests is bounded to the
  http2.Server.MaxConcurrentStreams setting, resetting an in-progress
  request allows the attacker to create a new request while the existing
  one is still executing.

  HTTP/2 servers now bound the number of simultaneously executing
  handler goroutines to the stream concurrency limit. New requests
  arriving when at the limit (which can only happen after the client
  has reset an existing, in-flight request) will be queued until a
  handler exits. If the request queue grows too large, the server
  will terminate the connection.

  This issue is also fixed in golang.org/x/net/http2 v0.17.0,
  for users manually configuring HTTP/2.

  The default stream concurrency limit is 250 streams (requests)
  per HTTP/2 connection. This value may be adjusted using the
  golang.org/x/net/http2 package; see the Server.MaxConcurrentStreams
  setting and the ConfigureServer function.

  This is CVE-2023-39325 and Go issue https://go.dev/issue/63417.
  This is also tracked by CVE-2023-44487.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-10-11 20:07:35 +02:00
.circleci dummy circleci config 2022-02-25 21:15:39 +01:00
.github update to go1.20.10 2023-10-11 20:07:35 +02:00
cli cli/registry/client: set actions when authn with token 2023-08-22 21:56:45 +02:00
cli-plugins cli-plugins/manager: fix deprecation comment of Metadata.Experimental 2023-05-09 22:21:46 +02:00
cmd/docker cmd/docker: areFlagsSupported: don't Ping if not needed 2023-08-22 10:47:14 +02:00
contrib/completion Stop slowing bash init by caching plugins path slowly 2023-08-23 13:32:06 +02:00
dockerfiles update to go1.20.10 2023-10-11 20:07:35 +02:00
docs docs: fix example for proxies in daemon.json 2023-05-19 17:29:05 +02:00
e2e update to go1.20.10 2023-10-11 20:07:35 +02:00
experimental experimental: fix broken link to "checkpoint and restore" page 2021-09-07 13:30:48 +02:00
internal/test internal/test: FakeCli: remove name for unused arg (revive) 2023-07-15 15:25:45 +02:00
man docs: update dockerd usage output for new proxy-options 2023-04-13 13:59:39 +02:00
opts opts: NormalizeCapability(): fix redefinition of the built-in function (revive) 2023-07-15 15:21:17 +02:00
scripts scripts/docs/generate-md.sh: fix location of generate code 2023-04-09 23:00:14 +02:00
service/logs service/logs: use strings.Cut 2022-12-29 15:19:31 +01:00
templates staticcheck: ignore SA1019: strings.Title is deprecated 2022-03-28 17:23:06 +02:00
vendor vendor: gotest.tools/v3 v3.5.0 2023-07-29 21:36:16 +02:00
.dockerignore validate manpages target 2022-02-25 17:11:17 +01:00
.gitattributes fix linguist with .gitattributes 2021-12-16 21:16:02 +01:00
.gitignore validate manpages target 2022-02-25 17:11:17 +01:00
.golangci.yml vendor: gotest.tools/v3 v3.5.0 2023-07-29 21:36:16 +02:00
.mailmap Update mailmap and AUTHORS 2022-12-01 10:04:48 +01:00
AUTHORS Update AUTHORS header to indicate it's generated 2022-12-01 10:05:22 +01:00
CONTRIBUTING.md Use gofumpt if available, and enable gofumpt linter 2022-09-30 19:14:36 +02:00
Dockerfile update to go1.20.10 2023-10-11 20:07:35 +02:00
LICENSE Add project files 2017-04-17 17:49:33 -04:00
MAINTAINERS Add Sam Thibault (sam-thibault) as curator 2022-11-25 11:35:41 +01:00
Makefile docs: generate markdown 2023-01-06 22:36:47 +01:00
NOTICE switch kr/pty to creack/pty v1.1.7 2019-07-29 16:45:41 -07:00
README.md README: fix badges 2023-01-13 19:18:26 +01:00
TESTING.md tweak description of login/logout 2022-04-04 10:44:11 +02:00
VERSION Update version to v23.0.0-dev 2022-11-24 19:43:32 +01:00
codecov.yml Drop support for (archived) Compose-on-Kubernetes 2022-02-22 13:47:34 +01:00
docker-bake.hcl update to go1.20.10 2023-10-11 20:07:35 +02:00
docker.Makefile docs: generate markdown 2023-01-06 22:36:47 +01:00
vendor.mod vendor: gotest.tools/v3 v3.5.0 2023-07-29 21:36:16 +02:00
vendor.sum vendor: gotest.tools/v3 v3.5.0 2023-07-29 21:36:16 +02:00

README.md

Docker CLI

PkgGoDev Build Status Test Status Go Report Card Codecov

About

This repository is the home of the cli used in the Docker CE and Docker EE products.

Development

docker/cli is developed using Docker.

Build CLI from source:

docker buildx bake

Build binaries for all supported platforms:

docker buildx bake cross

Build for a specific platform:

docker buildx bake --set binary.platform=linux/arm64 

Build dynamic binary for glibc or musl:

USE_GLIBC=1 docker buildx bake dynbinary 

Run all linting:

docker buildx bake lint shellcheck

Run test:

docker buildx bake test

List all the available targets:

make help

In-container development environment

Start an interactive development environment:

make -f docker.Makefile shell

Brought to you courtesy of our legal counsel. For more context, please see the NOTICE document in this repo.

Use and transfer of Docker may be subject to certain restrictions by the United States and other governments.

It is your responsibility to ensure that your use and/or transfer does not violate applicable laws.

For more information, please see https://www.bis.doc.gov

Licensing

docker/cli is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.