docker login报错如下:

WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error saving credentials: error storing credentials - err: exit status 1, out: Post "http://ipc/registry/credstore-updated": dial unix backend.sock: connect: connection refused

解决

检查一下credential的值,如果是"desktop",就应该在之后改成"pass":

cat ~/.docker/config.json

解决办法是跟随 https://github.com/docker/docker-credential-helpers/issues/102 中nathanfiscus的回答,按照他的做法逐步执行。

留意到,在执行有些步骤时,可能会弹出密码验证框,需要输入密码。

执行到pass init "<Your Name>"时,Your Name一行要填刚才执行gpg2 --gen-key时填写的名字。

执行到sed -i '0,/{/s/{/{\n\t"credsStore": "pass",/' ~/.docker/config.json时,会修改key为credential的值。

排坑

并不是docker daemon代理的问题。执行docker info发现有用到http_proxy,这是没问题的。
可以执行一下unset http_proxy,取消docker client的代理。但一般不是这个方面的问题。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐