FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build WORKDIR /src # Copy project file first to take advantage of Docker layer caching COPY ["LocationsApi.csproj", "./"] RUN dotnet restore "LocationsApi.csproj" # Copy the remaining source and publish COPY . . RUN dotnet publish "LocationsApi.csproj" -c Release -o /app/publish /p:UseAppHost=false FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS final WORKDIR /app COPY --from=build /app/publish . ENV ASPNETCORE_URLS=http://+:8080 \ ASPNETCORE_ENVIRONMENT=Production EXPOSE 8080 ENTRYPOINT ["dotnet", "LocationsApi.dll"]