Docker 构建失败并出现“未找到项目文件”错误

问题描述 投票:0回答:1

我有几个 dotnet core 控制台应用程序,用于在 Linux 容器上使用 docker。

我右键单击我的

server
项目,然后单击添加 Docker 支持。

它自动生成 Dockerfile,运行时我收到项目引用错误。

运行

docker build -t myserver .
命令会抛出错误

Step 7/13 : RUN dotnet restore ./dockertest.sln
/usr/share/dotnet/sdk/2.1.300/NuGet.targets(239,5): error MSB3202: The project file "/src/client/client.csproj" was not found. [/dockertest.sln]
/usr/share/dotnet/sdk/2.1.300/NuGet.targets(239,5): error MSB3202: The project file "/src/server/server.csproj" was not found. [/dockertest.sln]

FROM microsoft/aspnetcore-build:1.0-2.0 AS base
WORKDIR /app

FROM microsoft/dotnet:2.0-sdk AS build
WORKDIR /src
COPY src/server/server.csproj src/server/
COPY src/client/client.csproj src/client/
RUN dotnet restore src/server/server.csproj
COPY . .
WORKDIR /src/src/server
RUN dotnet build server.csproj -c Release -o /app

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

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

更新: 当保存对我的 dockerfile 的更改时,刚刚在输出窗口中注意到这一点

A non-critical error occurred while getting containers ready.  Your project will continue to function normally.  The error was: 
Unable to resolve the NuGet package dependency paths for the project C:\Code\dockertest\src\server\server.csproj.

更新2: 当我切换到 Windows 容器而不是 Linux 时,这工作得很好

docker visual-studio-2017 .net-core
1个回答
0
投票

我参加聚会可能会迟到,

我刚刚遇到了这个问题,问题出在项目或文件夹的“案例”上。例如,我从解决方案文件中得到了报告。

找不到“/src/tests/myproject.csproj”

但是,一旦我修复了这个问题,文件夹名称是“Tests”,docker 构建就可以正常工作。

希望这有帮助。

b.

© www.soinside.com 2019 - 2024. All rights reserved.