FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src COPY IM_API_NEW.sln ./ COPY MessageService.WebApi/MessageService.WebApi.csproj MessageService.WebApi/ COPY MessageService.Domain/MessageService.Domain.csproj MessageService.Domain/ COPY MessageService.Infrastructure/MessageService.Infrastructure.csproj MessageService.Infrastructure/ COPY DomainCommons/IM.DomainCommons.csproj DomainCommons/ COPY Infrastructure/IM.Infrastructure.csproj Infrastructure/ COPY IM.ASPNETCore/IM.ASPNETCore.csproj IM.ASPNETCore/ COPY IM.Commons/IM.Commons.csproj IM.Commons/ COPY IM.InitCommon/IM.InitCommon.csproj IM.InitCommon/ COPY IM.Jwt/IM.Jwt.csproj IM.Jwt/ COPY IM.Protocols/IM.Protocols.csproj IM.Protocols/ RUN dotnet restore MessageService.WebApi/MessageService.WebApi.csproj COPY . . RUN dotnet publish MessageService.WebApi/MessageService.WebApi.csproj \ -c Release \ -o /app/publish \ --no-restore FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS runtime WORKDIR /app ENV ASPNETCORE_ENVIRONMENT=Production ENV ASPNETCORE_URLS=http://+:8080 EXPOSE 8080 COPY --from=build /app/publish . ENTRYPOINT ["dotnet", "MessageService.WebApi.dll"]