首页 > 解决方案 > Dotnet 看不到 docker 卷上的文件

问题描述

dotnet restore在 Docker 环境中运行和其他命令时遇到问题。设置是:

我的 dockerfile 看起来像这样

version: "3.9"
services:
  app:
    build:
      context: ./app
      dockerfile: Dockerfile.app
    volumes:
      - "./app:/app"

我想用 dockerfile 实现的是构建一次,然后观察更改,然后重建 - 所以我不想复制文件,想挂载它们以供观看

FROM mcr.microsoft.com/dotnet/sdk:5.0

WORKDIR /app

RUN dotnet restore 
RUN dotnet publish 

CMD ["dotnet", "watch", "build"]

错误是

 > [3/4] RUN dotnet restore:
#5 0.423 MSBUILD : error MSB1003: Specify a project or solution file. The current working directory does not contain a project or solution file.

我试图为项目定义多种类型的路径,但没有任何好的结果

标签: .netdocker

解决方案


因为只有在 Dockerfile 构建成功时才会映射卷。

您必须先复制app文件夹才能构建映像。

FROM mcr.microsoft.com/dotnet/sdk:5.0

WORKDIR /app

COPY . .

RUN dotnet restore 
RUN dotnet publish 

CMD ["dotnet", "watch", "build"]

你能再试一次吗?


推荐阅读