[英]How to get the dependencies of a NuGet package from private NuGet feed?
[英]Building docker image with package from private nuget feed fails
我正在为我的 .NET Core 6 razor pages 应用程序使用由 Visual Studio 2022 生成的默认 Dockerfile。 该应用程序正在使用 DevExpress ASP.NET Core 控件。 我使用包供应商提供的私有 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.csproj" #13 sha256:f1029f328e1221cc75d3cbca3603f770dbb670711688ac30334449923e9ceb3f #13 0.893 确定要恢复的项目... #13 106 .csproj:错误 NU1102:无法找到版本(> = 21.2.8)#13 106.8 /src/DMS.Monitor/DMS.Monitor.csproj 的包 DevExtreme.AspNet.Core:错误 NU1102:-找到 3 个版本在 nuget.org [最近的版本:20.1.3] #13 107.1
无法恢复 /src/DMS.Monitor/DMS.Monitor.csproj(在 1.77 分钟内)。 #13 错误:执行程序运行失败 [/bin/sh -c dotnet restore "DMS.Monitor/DMS.Monitor.csproj"]:退出代码:1
我的项目使用 DevExtreme.AspNet.Core v.21.2.8,这在 nuget.org 中显然不可用。 有没有办法可以编辑NuGet.Config
文件来告诉 Docker 在哪里可以找到正确版本的包?
您应该能够使用命令添加您的私人提要
dotnet nuget add source <package source>
将它放在 Dockerfile 中的dotnet restore
命令之前。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.