docker / docker/cli

Missing error message when credhelper is not installed

Open
#2,121 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

area/authentication area/distribution
Dominant language
Go
Stars
6.1k
Forks
2.2k
Avg merge
1d 15h
Merged PRs (30d)
43

Description

Description

When configuring the credHelpers property in the docker config, but don't have the credential helper installed, an unhelpful and incorrect error message is show: no basic auth credentials.

Steps to reproduce the issue:

  1. Create a file ~/.docker/config.json with these contents
{
	"credHelpers": {
		"<account-id>.dkr.ecr.eu-west-1.amazonaws.com": "ecr-login"
	}
}
  1. Run docker push <repo/image name>

Describe the results you received:

docker push <repo/image name>
The push refers to repository [<repo/image name>]
065249fc8212: Preparing 
bf6866332b51: Preparing 
592386d5a1b1: Preparing 
57e6a3d20ce9: Preparing 
1690af51cb08: Preparing 
5a30999619d7: Waiting 
2e669e0134f5: Waiting 
8bacec4e3446: Waiting 
26b1991f37bd: Waiting 
55e6b89812f3: Waiting 
no basic auth credentials

Describe the results you expected:
An error messages that clearly indicates that the credential helper is not installed.

Output of docker version:

Client: Docker Engine - Community
 Version:           19.03.2
 API version:       1.40
 Go version:        go1.12.8
 Git commit:        6a30dfc
 Built:             Thu Aug 29 05:28:55 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.2
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.8
  Git commit:       6a30dfc
  Built:            Thu Aug 29 05:27:34 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.6
  GitCommit:        894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc:
  Version:          1.0.0-rc8
  GitCommit:        425e105d5a03fabd737a126ad93d62a9eeede87f
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

Output of docker info:

Client:
 Debug Mode: false

Server:
 Containers: 9
  Running: 2
  Paused: 0
  Stopped: 7
 Images: 344
 Server Version: 19.03.2
 Storage Driver: overlay2
  Backing Filesystem: xfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
 init version: fec3683
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 3.10.0-862.3.3.el7.x86_64
 Operating System: CentOS Linux 7 (Core)
 OSType: linux
 Architecture: x86_64
 CPUs: 2
 Total Memory: 7.637GiB
 Name: rgnmandjs01.man.rsg
 ID: IIJZ:5HF3:6B7E:C6RS:HWPC:ADEA:YJMZ:TAEE:NYEH:BBTS:OXHQ:LFAL
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the issue with ~/.docker/config.json containing the credHelpers entry and the docker push command shown. Trace how the Docker CLI handles a missing ecr-login credential helper; done means the command reports that the helper is not installed instead of showing "no basic auth credentials".

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
authentication, cli
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.