Docker 构建拉取访问被拒绝,存储库不存在或可能需要
Posted
技术标签:
【中文标题】Docker 构建拉取访问被拒绝,存储库不存在或可能需要【英文标题】:Docker build pull access denied, repository does not exist or may require 【发布时间】:2021-05-03 17:04:44 【问题描述】:我正在尝试在不使用 Visual Studio 的情况下生成 Docker 映像。我在项目文件夹中,我从 Windows 10 管理命令行 docker build .
执行我不知道如何使它工作。
[+] Building 1.3s (8/9)
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 753B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 34B 0.0s
=> [internal] load metadata for mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim 0.0s
=> [base 1/2] FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim 0.0s
=> ERROR FROM docker.io/publish/app:latest 1.2s
=> => resolve docker.io/publish/app:latest 1.2s
=> CACHED [base 2/2] WORKDIR /app 0.0s
=> CACHED [final 1/2] WORKDIR /app 0.0s
=> [auth] publish/app:pull token for registry-1.docker.io 0.0s
------
> FROM docker.io/publish/app:latest:
------
failed to load cache key: pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed
这是我的 dockerfile:
#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["src/App.Web/App.Web.csproj", "src/App.Web/"]
RUN dotnet restore "App.Web.csproj"
COPY . .
WORKDIR "/src/App.Web"
RUN dotnet build App.Web.csproj -c Debug -o /app
FROM build as debug
RUN dotnet publish "App.Web.csproj" -c Debug -o /app
FROM base as final
WORKDIR /app
COPY --from=publish/app /app .
ENTRYPOINT ["dotnet","App.Web.dll"]
【问题讨论】:
【参考方案1】:您有称为基础、构建和调试的阶段。然后在最后阶段你有:
COPY --from=publish/app /app .
当 docker 找不到具有该名称的阶段时,publish/app
,它会尝试找到不存在的图像。我猜你想从构建阶段复制,例如
COPY --from=build /app .
【讨论】:
谢谢我现在看到了。我改了名字却不明白我做了什么【参考方案2】:你登录了吗?尝试使用docker login
,然后再次执行docker build
正如我在这里看到的aspnet in docker hub 您打算使用的存储库已重命名。请改用以下内容
from mcr.microsoft.com/dotnet/aspnet:3.1-buster-slim
存储库已重命名,可在此处找到类似问题 similar issue
【讨论】:
感谢您的建议。这并没有解决问题,因为它在链接中指出“将继续对旧存储库位置中支持的标签进行更新以实现向后兼容性。”但是知道有一个新位置是很有价值的知识以上是关于Docker 构建拉取访问被拒绝,存储库不存在或可能需要的主要内容,如果未能解决你的问题,请参考以下文章
拉取访问被拒绝的存储库不存在或可能需要 docker login
DOCKER 错误:coffeeteareadb 的拉取访问被拒绝,存储库不存在或可能需要“docker login”
CannotPullContainerError:来自守护程序的错误响应:ECR 存储库映像的拉取访问被拒绝,存储库不存在或可能需要“docker login”
拉取访问被拒绝,存储库不存在或可能需要授权:服务器消息:不足的范围:授权失败
来自守护进程的错误响应:registry.gitlab.com 存储库的拉取访问被拒绝或可能需要“docker login”