首页 > 解决方案 > docker pull 命令不允许密码并且总是从守护进程得到错误响应:未授权:需要身份验证

问题描述

我正在经历一个意外的错误。每当我尝试microsoft/mssql-server-windows:2017-latest使用 blow 命令拉取时,我总是收到错误“来自守护进程的错误响应:未经授权:需要身份验证”。

C:\Users\Administrator>docker pull microsoft/mssql-server-windows:2017-latest

令人惊讶的是,当我使用时我能够登录docker login,我不确定我在这里缺少什么。我还可以使用我拥有的凭据登录到https://hub.docker.com/ 。仅当我尝试拉动时才存在问题。

C:\Users\Administrator> docker pull microsoft/mssql-server-windows:2017-latest

请在拉取之前登录:使用您的 Docker ID 登录以从 Docker Hub 推送和拉取镜像。如果您没有 Docker ID,请前往 https://hub.docker.com创建一个。用户名:sibeeshvenu 密码:来自守护进程的错误响应:未经授权:需要身份验证

C:\Users\Administrator> docker login使用您的 Docker ID 登录以从 Docker Hub 推送和拉取镜像。如果您没有 Docker ID,请前往https://hub.docker.com创建一个。用户名:sibeeshvenu 密码:登录成功

C:\Users\Administrator> docker pull microsoft/mssql-server-windows:2017-latest

请在拉取之前登录:使用您的 Docker ID 登录以从 Docker Hub 推送和拉取镜像。如果您没有 Docker ID,请前往 https://hub.docker.com创建一个。用户名(sibeeshvenu):sibeeshvenu 密码:来自守护进程的错误响应:未经授权:需要身份验证

C:\用户\管理员>

标签: sql-serverdockerdocker-commanddocker-pull

解决方案


我找到了原因。这是存储库名称的问题。我mmsqlhub.docker中搜索,在那里我找不到任何同名的存储库,microsoft/mssql-server-windows:2017-latest选择 mssql-server-windows-express 并运行如下拉取命令。

docker pull microsoft/mssql-server-windows-express

在我输入我的凭据后,它正在按预期提取存储库。当存储库名称无效时,我们似乎收到此授权错误。

C:\Users\Administrator>docker pull microsoft/mssql-server-windows-express 使用默认标签:latest 最新:从 microsoft/mssql-server-windows-express 3889bb8d808b 提取:提取 [========== ============================>
] 3.127 GB/4.07 GB 449343c9d7e2:下载完成 a336350523ea:下载完成 2c12ef99f411:下载完成 8ebb28bb3276:下载完成 3bb8431b46ce:下载完成 a4a938096b3c:下载完成 656eb837f7e6:下载完成 a3d536b0e79d:下载完成 a0aec5f46615:下载完成 64a0f6512541:下载完成 b900d04a68bd:下载完成


推荐阅读