The Docker CLI
Go to file
Sebastiaan van Stijn a483dfd10b
[23.0] update go to go1.19.10
go1.19.10 (released 2023-06-06) includes four security fixes to the cmd/go and
runtime packages, as well as bug fixes to the compiler, the go command, and the
runtime. See the Go 1.19.10 milestone on our issue tracker for details:

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

full diff: https://github.com/golang/go/compare/go1.19.9...go1.19.10

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

- cmd/go: cgo code injection
  The go command may generate unexpected code at build time when using cgo. This
  may result in unexpected behavior when running a go program which uses cgo.

  This may occur when running an untrusted module which contains directories with
  newline characters in their names. Modules which are retrieved using the go command,
  i.e. via "go get", are not affected (modules retrieved using GOPATH-mode, i.e.
  GO111MODULE=off, may be affected).

  Thanks to Juho Nurminen of Mattermost for reporting this issue.

  This is CVE-2023-29402 and Go issue https://go.dev/issue/60167.

- runtime: unexpected behavior of setuid/setgid binaries

  The Go runtime didn't act any differently when a binary had the setuid/setgid
  bit set. On Unix platforms, if a setuid/setgid binary was executed with standard
  I/O file descriptors closed, opening any files could result in unexpected
  content being read/written with elevated prilieges. Similarly if a setuid/setgid
  program was terminated, either via panic or signal, it could leak the contents
  of its registers.

  Thanks to Vincent Dehors from Synacktiv for reporting this issue.

  This is CVE-2023-29403 and Go issue https://go.dev/issue/60272.

- cmd/go: improper sanitization of LDFLAGS

  The go command may execute arbitrary code at build time when using cgo. This may
  occur when running "go get" on a malicious module, or when running any other
  command which builds untrusted code. This is can by triggered by linker flags,
  specified via a "#cgo LDFLAGS" directive.

  Thanks to Juho Nurminen of Mattermost for reporting this issue.

  This is CVE-2023-29404 and CVE-2023-29405 and Go issues https://go.dev/issue/60305 and https://go.dev/issue/60306.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2023-06-21 00:57:59 +02:00
.circleci dummy circleci config 2022-02-25 21:15:39 +01:00
.github [23.0] update go to go1.19.10 2023-06-21 00:57:59 +02:00
cli docs: update description for docker -H flag 2023-05-08 15:11:10 +02:00
cli-plugins cli-plugins/manager: fix deprecation comment of Metadata.Experimental 2023-05-09 22:21:46 +02:00
cmd/docker Handle empty DOCKER_BUILDKIT like unset 2023-04-19 15:53:40 +02:00
contrib/completion volumes: prune: add --all / -a option 2023-04-26 12:06:39 +02:00
dockerfiles [23.0] update go to go1.19.10 2023-06-21 00:57:59 +02:00
docs docs: fix example for proxies in daemon.json 2023-05-19 17:29:05 +02:00
e2e [23.0] update go to go1.19.10 2023-06-21 00:57:59 +02:00
experimental experimental: fix broken link to "checkpoint and restore" page 2021-09-07 13:30:48 +02:00
internal/test internal/test: use strings.Cut 2022-12-29 15:19:31 +01:00
man docs: update dockerd usage output for new proxy-options 2023-04-13 13:59:39 +02:00
opts Fix bad ThrottleDevice path 2023-02-06 14:47:33 +01: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: github.com/docker/distribution v2.8.2 2023-05-11 19:17:50 +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 Use gofumpt if available, and enable gofumpt linter 2022-09-30 19:14:36 +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 [23.0] update go to go1.19.10 2023-06-21 00:57:59 +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 [23.0] update go to go1.19.10 2023-06-21 00:57:59 +02:00
docker.Makefile docs: generate markdown 2023-01-06 22:36:47 +01:00
vendor.mod vendor: github.com/docker/distribution v2.8.2 2023-05-11 19:17:50 +02:00
vendor.sum vendor: github.com/docker/distribution v2.8.2 2023-05-11 19:17:50 +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.