Всем привет, у меня такая проблема: Я создал API на asp .net, которое запускается в контейнере через командную строку. вот Dockerfile:
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM base AS build
WORKDIR /src
COPY ["WebApi/WebApi.csproj", "WebApi/"]
RUN dotnet restore "WebApi/WebApi.csproj"
COPY ["WebApi", "WebApi/"]
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 /p:UseAppHost=false
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "WebApi.dll"]
Проблема в том, что после того, как я создаю образ локально, я также хочу отправить этот образ в локальный реестр и запускать оттуда на другом компьютере (на первом компьютере Windows, на втором - Linux, не знаю, может ли это влиять на результат) После отправки образа в реестр, и создания контейнера из реестра, контейнер на том компьютере создаётся и выдаёт такую ошибку:
Possible reasons for this include:
* You misspelled a built-in dotnet command.
* You intended to execute a .NET program, but dotnet-WebApi.dll does not exist.
* You intended to run a global tool, but a dotnet-prefixed executable with this name could not be found on the PATH
С чем это может быть связано? WebApi - это название всего сервиса, то есть он не находит весь файл проекта