【问题标题】:Docker image creation - Net core 3.1 web API - Single solution with multiple projectsDocker 映像创建 - Net core 3.1 Web API - 具有多个项目的单一解决方案
【发布时间】:2021-03-12 05:49:53
【问题描述】:

我在 .net core 3.1 中使用 docker 文件创建了 web api,并包含了 DAL 项目。 DAL 项目对所有 API 都是通用的。这是我的项目结构

                  --Solution
                    dockerfile
                  --DAL Project

这是我的 docker 文件格式

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build
WORKDIR /src
COPY ["Notification.csproj", ""]
COPY ["../DAL/DAL.csproj", "../DAL/"]
RUN dotnet restore "./Notification.csproj"
COPY . .
WORKDIR "/src/."
RUN dotnet build "Notification.csproj" -c Release -o /app/build

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

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

在构建应用程序 VS Code 时出现以下错误

COPY 失败:无法解析作用域路径 ..\DAL_DAL.csproj (): evalSymlinksInScope: \?\C:\ProgramData\Docker\tmp\DAL\DAL.csproj 不在 \?\C:\ProgramData\ Docker\tmp\docker-builder572417841。可能的原因是构建上下文之外的禁止路径

任何帮助将不胜感激。

【问题讨论】:

    标签: docker asp.net-core-webapi


    【解决方案1】:

    这是我的项目结构;

    这是我在 SampleApp.API 中的 Dockerfile;

    也许它可以成为你的榜样。

    【讨论】:

      猜你喜欢
      • 2020-05-12
      • 2019-08-06
      • 1970-01-01
      • 2023-03-17
      • 2018-09-18
      • 2011-11-09
      • 1970-01-01
      • 2021-08-11
      • 1970-01-01
      相关资源
      最近更新 更多