VS2017构建失败 – DOCKER_REGISTRY

我开始使用Docker并熟悉.NET Core和Visual Studio 2017.我创建了一个名为“WebApplicationCore21”的新Web应用程序(Razor Pages),启用了Docker支持,并在门外接收了一个很好的Dockerfile.

FROM microsoft/dotnet:2.1-aspnetcore-runtime-nanoserver-1709 AS base
WORKDIR /app
EXPOSE 62911
EXPOSE 44323

FROM microsoft/dotnet:2.1-sdk-nanoserver-1709 AS build
WORKDIR /src
COPY WebApplicationCore21/WebApplicationCore21.csproj WebApplicationCore21/
RUN dotnet restore WebApplicationCore21/WebApplicationCore21.csproj
COPY . .
WORKDIR /src/WebApplicationCore21
RUN dotnet build WebApplicationCore21.csproj -c Release -o /app

FROM build AS publish
RUN dotnet publish WebApplicationCore21.csproj -c Release -o /app

FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "WebApplicationCore21.dll"]

当项目构建正常时,它在运行时出错(F5),说明:

Description: The DOCKER_REGISTRY variable is not set. Defaulting to a blank string.
Project: docker-compose
File: Microsoft.VisualStudio.Docker.Compose.targets
Line: 363

步骤已验证:

>在主板和Windows 10 Pro中启用Hyper-V
>安装了Docker for Windows
>可以登录Docker Hub和客户端
>将Docker客户端切换到Linux的Windows容器

我还注意到虽然我可以使用我的集线器凭据登录Docker客户端,但尝试在PowerShell中运行docker login并使用相同的用户名/密码会产生以下结果:

Error response from daemon: Get https://registry-1.docker.io/v2/: unauthorized: incorrect username or password

也许这是有帮助的,也可能是无关的;我只需要从VS2017运行.

最佳答案
我今天早上根据未经授权发现我的solution:用户名或密码错误.

当我在系统托盘中检查Docker for Windows时,我使用我的Docker Hub电子邮件地址登录. Docker for Windows发现这是可以接受的,这是误导性的.这样做会导致与VS2017交互的应用程序出现问题.使用我的Docker Hub用户名代替解决了它.

转载注明原文:VS2017构建失败 – DOCKER_REGISTRY - 代码日志