问题描述
使用 .net core 为控制台应用程序构建 docker 时出现以下错误.
I got the below error when build docker for console application using .net core.
第 1/15 步:来自 microsoft/dotnet:2.1-runtime AS base解析引用时出错:microsoft/dotnet:2.1-runtime AS base"不是有效的存储库/标记:引用格式无效
我的 Dockerfile 如下
My Dockerfile looks below
FROM microsoft/dotnet:2.1-sdk AS build
WORKDIR /src
COPY ConsoleApp2/ConsoleApp2.csproj ConsoleApp2/
RUN dotnet restore ConsoleApp2/ConsoleApp2.csproj
COPY . .
WORKDIR /src/ConsoleApp2
RUN dotnet build ConsoleApp2.csproj -c Release -o /app
FROM build AS publish
RUN dotnet publish ConsoleApp2.csproj -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "ConsoleApp2.dll"]
我的 docker 版本是
My docker version is
Docker 版本 17.03.1-ce-rc1,构建 3476dbf
有人可以建议我在这方面做错了什么.提前致谢.
Can some one suggest what I am doing wrong in this.Thanks in advance.
推荐答案
多阶段构建(添加了 FROM ... AS ...
语法以及多个 FROM代码> 行)需要 17.05 或更高版本.您需要升级您的 docker 服务器.
Multi-stage builds (which added the FROM ... AS ...
syntax along with multiple FROM
lines) require 17.05 or newer. You'll need to upgrade your docker server.
有关多阶段构建的更多详细信息,请参阅:https://docs.docker.com/develop/develop-images/multistage-build/
For more details on multi-stage builds, see: https://docs.docker.com/develop/develop-images/multistage-build/
这篇关于构建失败:错误解析参考:“microsoft/dotnet:2.1-runtime AS base"不是有效的存储库/标签:的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!