The Docker CLI
Go to file
Sebastiaan van Stijn b83bc67136
config: print deprecation warning when falling back to ~/.dockercfg
Relates to the deprecation, added in 3c0a167ed5

The docker CLI up until v1.7.0 used the `~/.dockercfg` file to store credentials
after authenticating to a registry (`docker login`). Docker v1.7.0 replaced this
file with a new CLI configuration file, located in `~/.docker/config.json`. When
implementing the new configuration file, the old file (and file-format) was kept
as a fall-back, to assist existing users with migrating to the new file.

Given that the old file format encourages insecure storage of credentials
(credentials are stored unencrypted), and that no version of the CLI since
Docker v1.7.0 has created this file, the file is marked deprecated, and support
for this file will be removed in a future release.

This patch adds a deprecation warning, which is printed if the CLI falls back
to using the deprecated ~/.dockercfg file.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2021-03-08 16:13:02 +01:00
.circleci CircleCI: update to docker 19.03.12 2020-09-11 16:44:02 +02:00
.github GH Actions: run CodeQL only on cron-job, not on pull requests 2020-10-01 16:51:28 +02:00
cli config: print deprecation warning when falling back to ~/.dockercfg 2021-03-08 16:13:02 +01:00
cli-plugins Use golang.org/x/sys/execabs 2021-01-26 17:18:04 +00:00
cmd/docker config: print deprecation warning when falling back to ~/.dockercfg 2021-03-08 16:13:02 +01:00
contrib/completion Add docs and completion for docker node ls --filter node.label 2021-01-27 14:11:31 +01:00
dockerfiles Bump vndr v0.1.2 2020-10-16 01:32:00 +02:00
docs Add docs and completion for docker node ls --filter node.label 2021-01-27 14:11:31 +01:00
e2e context: Add tarball e2e tests 2021-02-02 13:51:17 +01:00
experimental Fix link to docker build with squash experiment 2020-12-18 22:33:02 +00:00
internal/test Fix container creation time in test/builders 2020-12-16 08:55:29 +07:00
kubernetes Always enable experimental features 2020-10-02 15:59:42 +02:00
man fix docker-run man page table formatting 2021-01-25 17:41:58 +01:00
opts opts: fix potential integer overflow CWE-190, CWE-681 2020-10-24 01:30:42 +02:00
scripts Rename bin/md2man to bin/go-md2man 2020-12-16 10:20:00 +07:00
service/logs bump gotest.tools v3.0.1 for compatibility with Go 1.14 2020-02-23 00:28:55 +01:00
templates bump gotest.tools v3.0.1 for compatibility with Go 1.14 2020-02-23 00:28:55 +01:00
vendor vendor docker, docker-credential-helpers and golang/sys for execabs package 2021-01-26 17:18:04 +00:00
.dockerignore Update .dockerignore 2020-08-20 15:46:46 +02:00
.gitignore Add checks for dependencies that are not vendored. 2020-07-06 09:23:19 +00:00
.golangci.yml Remove now obsolete gometalinter and use golangci-lint instead 2019-10-31 19:22:44 +01:00
.mailmap Update authors and mailmap 2020-08-06 01:58:32 +02:00
AUTHORS Update authors and mailmap 2020-08-06 01:58:32 +02:00
CONTRIBUTING.md Fix broken link in CONTRIBUTING 2020-03-19 15:03:59 +01:00
Jenkinsfile Fix make -f docker.Makefile without buildkit enabled 2020-09-24 13:01:42 +02:00
LICENSE Add project files 2017-04-17 17:49:33 -04:00
MAINTAINERS Maintainers: remove Justin and Aaron 2019-12-04 13:08:15 +01:00
Makefile Add checks for dependencies that are not vendored. 2020-07-06 09:23:19 +00:00
NOTICE switch kr/pty to creack/pty v1.1.7 2019-07-29 16:45:41 -07:00
README.md update Jenkins Build Status urls for README 2019-10-24 11:21:12 -04:00
TESTING.md Update TESTING.md to replace testify by gotest.tools 2018-07-02 09:24:28 +02:00
VERSION Update version to 20.10-dev 2020-10-13 09:37:17 +02:00
appveyor.yml Bump Golang 1.13.15 2020-08-10 17:24:48 +02:00
codecov.yml Fix PR comments 2018-01-03 10:23:32 +01:00
docker.Makefile Fix make -f docker.Makefile without buildkit enabled 2020-09-24 13:01:42 +02:00
poule.yml Add github templates and initial poule configuration 2017-05-09 16:57:46 +02:00
vendor.conf vendor docker, docker-credential-helpers and golang/sys for execabs package 2021-01-26 17:18:04 +00:00

README.md

build status Build Status

docker/cli

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 a linux binary:

$ make -f docker.Makefile binary

Build binaries for all supported platforms:

$ make -f docker.Makefile cross

Run all linting:

$ make -f docker.Makefile lint

List all the available targets:

$ make help

In-container development environment

Start an interactive development environment:

$ make -f docker.Makefile shell

In the development environment you can run many tasks, including build binaries:

$ make binary

Legal

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.