将我的用户名和密码复制/粘贴到Docker Hub网站可以正常工作。
密码很长,但不包含破壳符号。
将这些相同的凭据复制/粘贴到命令行docker login
会导致incorrect username or password
错误。我尝试以交互方式(复制/粘贴和键入)和命令行参数传递凭据,结果相同:
# INTERACTIVE
$ docker login
Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username: [email protected]
Password: <REDACTED>
Error response from daemon: Get https://registry-1.docker.io/v2/: unauthorized: incorrect username or password
# COMMAND LINE
$ docker login -u [email protected] -p <REDACTED>
Error response from daemon: Get https://registry-1.docker.io/v2/: unauthorized: incorrect username or password
@mustaccio是对的。
Docker Hub网站允许您使用您的用户名或您的电子邮件登录,并且该网站不需要用例正确的用户名。
docker login
需要用例正确的用户名,并且不能使用您的电子邮件地址。
当我注册时,我选择了一个以驼峰为基础的用户名,例如:
MyUsername
在实践中,Docker强制将此用户名强制为所有小写。登录后,您将在网站的右上角看到正确的用户名。在这个例子中:
myusername
该网站允许您使用MyUsername或myusername登录。
docker login
只允许myusername。
如果您没有注销并且您已将EMAIL地址用于登录,则会发生同样的问题。
docker logout
docker login
不要输入电子邮件地址,而是输入USERNAME
我使用了一个密码生成器,在我的密码中加入了特殊字符,我可以在浏览器中登录,但不能通过cli登录。我把它改成了字母和数字而且有效。
如果您在Windows上使用git bash,请使用以下命令:
winpty docker login --username <yourusername>
它会提示输入密码。输入您的密码。显示消息“Login Succeeded”。
登录docker官方网站后,您可以在右上角找到“yourusername”。使用您的电子邮件,它无法使用。
在Windows上:右键单击系统托盘上的泊坞窗并注销。然后登录,但使用您的docker hub用户名而不是电子邮件地址。