gpt4 book ai didi

docker - AzureDevops 在构建 Dockerfile 时找不到 csproj 文件

转载 作者:行者123 更新时间:2023-12-02 20:36:00 25 4
gpt4 key购买 nike

我正在尝试在 AzureDevops 中创建管道,所以我有以下 Dockerfile:

FROM mcr.microsoft.com/dotnet/core/aspnet:2.1-stretch-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

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

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

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

当我尝试运行我的管道时,出现以下错误:

Step 7/17 : COPY ["WebApi/WebApi.csproj", "WebApi/"]
COPY failed: stat /var/lib/docker/tmp/docker-builder651276881/WebApi/WebApi.csproj: no such file or directory
##[error]COPY failed: stat /var/lib/docker/tmp/docker-builder651276881/WebApi/WebApi.csproj: no such file or directory
##[error]/usr/bin/docker failed with return code: 1

我注意到 AzureDevops 使用以下命令在文件夹外构建我的 Docker:

/usr/bin/docker build -f /home/vsts/work/1/s/WebApi/Dockerfile -t repository:9 /home/vsts/work/1/s/WebApi

我想我需要进入 WebApi/文件夹来执行构建,因为我的 Dockerfile 试图复制文件。

最佳答案

像这样更改 dockerfile 可以解决问题:

COPY ["WebApi.csproj", "WebApi/"]

关于docker - AzureDevops 在构建 Dockerfile 时找不到 csproj 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58882245/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com