FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base WORKDIR /app EXPOSE 80 EXPOSE 443 FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build WORKDIR /src COPY ["SpotifyService/SpotifyService.csproj", "SpotifyService/SpotifyService/"] COPY ["IdentityProvider/IdentityProvider.csproj", "IdentityProvider/IdentityProvider/"] COPY ["NemAnBlazor/NemAnBlazor.csproj", "NemAnBlazor/NemAnBlazor/"] COPY ["SpotifyWorker/SpotifyWorker.csproj", "SpotifyWorker/SpotifyWorker/"] COPY *.sln . COPY *.csproj ./ RUN dotnet restore "SpotifyService/SpotifyService.csproj" RUN dotnet restore "IdentityProvider/IdentityProvider.csproj" RUN dotnet restore "NemAnBlazor/NemAnBlazor.csproj" RUN dotnet restore "SpotifyWorker/SpotifyWorker.csproj" COPY . . WORKDIR "/src/SpotifyService/SpotifyService" RUN dotnet build "SpotifyService.csproj" -c Release -o /app/build COPY . . WORKDIR "/src/IdentityProvider/IdentityProvider" RUN dotnet build "IdentityProvider.csproj" -c Release -o /app/build1 COPY . . WORKDIR "/src/NemAnBlazor/NemAnBlazor" RUN dotnet build "NemAnBlazor.csproj" -c Release -o /app/build2 COPY . . WORKDIR "/src/SpotifyWorker/SpotifyWorker" RUN dotnet build "SpotifyWorker.csproj" -c Release -o /app/build3 FROM build AS publish RUN dotnet publish "NemAnBlazor.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY --from=publish /app/publish . ENTRYPOINT ["dotnet", "NemAnBlazor.dll"]