0

プレイライト テストの docker イメージを作成しようとしています。これは xunit を使用した .net 5 プロジェクトです。

Docker イメージを起動しようとすると、次のエラーが表示されます

The specified task executable "sh" could not be run. System.IO.DirectoryNotFoundException: The working directory "/publish/.playwright/unix/native" does not exist. [/src/MyProject/MyProject.Core.csproj]

これは私のdockerfileです

FROM mcr.microsoft.com/dotnet/sdk:5.0 as build
WORKDIR /src
COPY ["MyProject.Core.csproj", ""]
RUN dotnet restore "MyProject.Core.csproj"
COPY . .
WORKDIR "/src"
RUN dotnet build "MyProject.Core.csproj" -c Debug -o /publish
    
FROM mcr.microsoft.com/playwright:v1.9.1-focal AS playwright

COPY --from=build /publish/ /app/
RUN chown -R pwuser:pwuser /app
run dotnet test /app/MyProject.Core.csproj

nuget パッケージの playwrightSharp.targets ファイルから来ているようです。ターゲットをコメントアウトしようとしましたが、コメントアウトされていないように動作するため、どこかにキャッシュする必要があると思います。ターゲットファイルを削除しようとしましたが、それでもエラーが発生します:

/root/.nuget/packages/playwrightsharp/0.192.0/build/netstandard2.0/PlaywrightSharp.targets(18,5): error MSB6003:

/root は docker イメージ内にあるようですか? どこを見ればいいのかさえわからないほどドッカーを知りません。

どんな助けでも大歓迎です!ありがとう

4

1 に答える 1