无法读取dockerfile-.NET 5.0
我是Docker的新手,这个问题让我完全困惑。没有一个在线解决方案对我有效,因此任何帮助都将不胜感激 因此,我试图为一个.NET5.0Web应用程序构建一个docker映像,该应用程序也引用了一个类库项目。这是针对Windows计算机上的Linux容器,Docker Desktop已设置为“Linux容器” 这是我的目录结构- 我在这里有我的解决方案文件:无法读取dockerfile-.NET 5.0,docker,dockerfile,.net-5,Docker,Dockerfile,.net 5,我是Docker的新手,这个问题让我完全困惑。没有一个在线解决方案对我有效,因此任何帮助都将不胜感激 因此,我试图为一个.NET5.0Web应用程序构建一个docker映像,该应用程序也引用了一个类库项目。这是针对Windows计算机上的Linux容器,Docker Desktop已设置为“Linux容器” 这是我的目录结构- 我在这里有我的解决方案文件: D:\Repo\HostServer-v2\HostServer\HostServer.sln 主web应用程序项目位于此处(还包含Doc
D:\Repo\HostServer-v2\HostServer\HostServer.sln
主web应用程序项目位于此处(还包含Dockerfile):
类库项目位于此处:
D:\Repo\HostServer-v2\HostServer\QuicktronWrapper.csproj
D:\Repo\HostServer-v2\HostServer
Visual studio在D:\Repo\HostServer-v2\HostServer\HostServer\
FROM mcr.microsoft.com/dotnet/aspnet:5.0 AS base
WORKDIR /app
EXPOSE 80
FROM mcr.microsoft.com/dotnet/sdk:5.0 AS build
WORKDIR /src
COPY ["HostServer/HostServer.csproj", "HostServer/"]
COPY ["QuicktronWrapper/QuicktronWrapper.csproj", "QuicktronWrapper/"]
RUN dotnet restore "HostServer/HostServer.csproj"
COPY . .
WORKDIR "/src/HostServer"
RUN dotnet build "HostServer.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "HostServer.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "HostServer.dll"]
在这里创建了一个.dockrignore:
D:\Repo\HostServer-v2\HostServer\QuicktronWrapper.csproj
D:\Repo\HostServer-v2\HostServer
我知道Docker的所有项目都应该在同一个构建上下文中,所以我从D:\Repo\HostServer-v2\HostServer运行以下命令
docker build -f D:\Repo\HostServer-v2\HostServer\HostServer -t hostserver .
但我得到了以下错误:
[+] Building 0.0s (2/2) FINISHED
=> [internal] load build definition from HostServer 0.0s
=> => transferring dockerfile: 20.52kB 0.0s
=> CANCELED [internal] load .dockerignore 0.0s
=> => transferring context: 0.0s
failed to solve with frontend dockerfile.v0: failed to read dockerfile: read /var/lib/docker/tmp/buildkit-mount468265171/HostServer: is a directory
PS D:\Repo\HostServer-v2\HostServer>
我知道这和Dockerfile有关
请提供帮助。错误“HostServer:是一个目录”。它需要一个文件,而不是一个目录。你可以参考 请尝试通过显式提供docker build-f HostServer\Dockerfile-t HostServer.目录
D:\Repo\HostServer-v2\HostServer
来运行该命令