繁体   English   中英

Docker 映像创建 - Net core 3.1 web API - 具有多个项目的单一解决方案

[英]Docker image creation - Net core 3.1 web API - Single solution with multiple projects

我已经在 .net 核心 3.1 中创建了 web api 和 Z05B6053C41A8B6053C41A2130AFDZ6FC3E 文件和项目 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 failed: failed to resolve scoped path..\DAL_DAL.csproj (): evalSymlinksInScope: \?\C:\ProgramData\Docker\tmp\DAL\DAL.csproj is not in \?\C:\ProgramData\Docker\tmp \docker-builder572417841。 可能的原因是构建上下文之外的禁止路径

任何帮助,将不胜感激。

这是我的项目结构;

项目结构

这是我在 SampleApp.API 中的 Dockerfile;

Dockerfile

也许它可以成为你的一个例子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM