Can anyone tell me how to delete credentials from docker-credential-secretservice
?
Trying to do a docker pull
against a privately hosted docker registry I get:
Error response from daemon: Get https://docker-hub.example.net/v2/foo/bar/baz/manifests/1.0.3: unauthorized: HTTP Basic: Access denied
You must use a personal access token with 'api' scope for Git over HTTP.
You can generate one at https://docker-hub.example.net/profile/personal_access_tokens
The registry at the URL is actually public (protected by VPN/firewall, not credentials). If I set up another linux user and run the docker pull as that user it runs fine, but my normal user has cached incorrect credentials that are breaking access to the public registry.
After stracing docker pull
I figured out it was requesting creds from the docker-credentials-secretservice
command and I can see them listed in there:
$ docker-credential-secretservice list
{"docker-hub.example.net":"dschoen"}
I can’t docker logout
to the domain:
$ docker logout docker-hub.example.net
Not logged in to docker-hub.example.net
or figure out how to request directly from docker-credential-secretservice
that the credentials be erased (the help text is cryptic, there’s no proper manual page that I can find and I can’t locate a source repo that actually seems to match how the command operates).
I should possibly mention that moving the binary out of the way does let docker pull
work again:
$ docker pull docker-hub.example.net/foo/bar/baz:1.0.3
Error response from daemon: Get https://docker-hub.example.net/v2/foo/bar/baz/manifests/1.0.3: unauthorized: HTTP Basic: Access denied
You must use a personal access token with 'api' scope for Git over HTTP.
You can generate one at https://gitlab.example.net/profile/personal_access_tokens
$ sudo mv /usr/bin/docker-credential-secretservice{,-wtaf-docker}
$ docker pull docker-hub.example.net/foo/bar/baz:1.0.3
1.0.3: Pulling from foo/bar/baz
51a46973b6b4: Already exists
55132f423747: Pulling fs layer
[...]
Ideas?