用私有源的包构建docker镜像失败



我使用的是Visual Studio 2022为我的。net Core 6 razor pages应用程序生成的默认Dockerfile。. NET核心控件。我使用包供应商提供的私有Nuget提要URL下载了必要的包。

这是Dockerfile的样子:

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /src
COPY ["NuGet.Config", "."]
COPY ["DMS.Monitor/DMS.Monitor.csproj", "DMS.Monitor/"]
RUN dotnet restore "DMS.Monitor/DMS.Monitor.csproj"
COPY . .
WORKDIR "/src/DMS.Monitor"
RUN dotnet build "DMS.Monitor.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "DMS.Monitor.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "DMS.Monitor.dll"]

当我尝试构建映像时,我得到以下错误:

#13 [build 5/8] RUN dotnet restore "DMS.Monitor/DMS.Monitor. csproject "# 13 sha256: f1029f328e1221cc75d3cbca3603f770dbb670711688ac30334449923e9ceb3f决定项目恢复…106.8/src/DMS.Monitor/DMS.Monitor。csproj: NU1102:无法找到包devextreme . asp.net . core with version (>= 21.2.8) #13 106.8/src/DMS.Monitor/DMS.Monitor。csproj: error NU1102: - Found
恢复/src/DMS.Monitor/DMS.Monitor失败。Csproj(1.77分钟)。[/bin/sh -c dotnet restore "DMS.Monitor/DMS.Monitor. csproject "]: exit code: 1

我的项目使用DevExtreme.AspNet.Core v.21.2.8,这显然是不可用的nuget.org。是否有一种方法可以编辑NuGet.Config文件,告诉Docker在哪里可以找到正确的包版本?

您应该能够使用命令

添加您的私有提要
dotnet nuget add source <package source>

将其放在Dockerfile中的dotnet restore命令之前。

相关内容

  • 没有找到相关文章

最新更新