在hub.docker.com上创建了用户名密码,但是当我运行docker run hello-world时,我仍然遇到身份验证错误,即使我运行“docker login”,然后输入我的凭据....但它显示成功消息当我做的时候
docker login -u <myusername> -p <mypassword> https://hub.docker.com
但即便如此,如果我尝试运行
docker run hello-world
我得到同样的错误:
"error response from daemon: login attempt to https://registry-1.docker.io/v2/ failed with status: 401 Unauthorized"
答案 0 :(得分:1)
尝试先使用docker logout
我经常发现这至少可以让我在出现身份验证问题时提取图像。
答案 1 :(得分:1)
这里出了一些问题。首先,登录命令不应指定 url。相反,您指定一个注册表。对于集线器,您甚至不包括:
docker login -u <myusername> -p <mypassword>
接下来,hello-world 图像不需要任何身份验证。如果您的凭据设置不正确,您可以退出:
docker logout
如果之后您仍然看到问题,最可能的原因是您网络上的代理拦截了请求,而不是 docker Hub 给出 401 错误,而是代理服务器。您可以通过遵循以下两者来配置 docker 以使用代理:
答案 2 :(得分:0)
首先尝试此命令:
docker logout https://hub.docker.com
您应该得到如下输出:
正在删除登录凭据...
然后尝试登录。
答案 3 :(得分:0)
我有类似的问题,就我而言,我的解决方案是,我需要通过STDIN方法输入密码,如下所示:
cat〜/ my_password.txt | docker login --username [在此处输入您的用户名] --password-stdin
请记住,您的用户名不是您的电子邮件地址。
答案 4 :(得分:0)
docker logout
docker login
答案 5 :(得分:-1)
码头工人登录失败
码头工人登录成功
它将使用现有凭据进行身份验证。
SO
未选中常规->将Docker登录名安全地存储在macOS钥匙串中,它解决了我的Docker登录失败的问题