Blazor & WASM in combination to get statistics from Spotify API for performing the song analysis. With separate microservices for auth, Spotify, user data tracking, and application, connected through gRPC with Polly.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Dockerfile 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
  2. WORKDIR /app
  3. EXPOSE 80
  4. FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
  5. WORKDIR /src
  6. COPY ["SpotifyService/SpotifyService.csproj", "SpotifyService/SpotifyService/"]
  7. COPY ["IdentityProvider/IdentityProvider.csproj", "IdentityProvider/IdentityProvider/"]
  8. COPY ["NemAnBlazor/NemAnBlazor.csproj", "NemAnBlazor/NemAnBlazor/"]
  9. COPY ["SpotifyWorker/SpotifyWorker.csproj", "SpotifyWorker/SpotifyWorker/"]
  10. COPY *.sln .
  11. COPY *.csproj ./
  12. RUN dotnet restore "SpotifyService/SpotifyService.csproj"
  13. RUN dotnet restore "IdentityProvider/IdentityProvider.csproj"
  14. RUN dotnet restore "NemAnBlazor/NemAnBlazor.csproj"
  15. RUN dotnet restore "SpotifyWorker/SpotifyWorker.csproj"
  16. COPY . .
  17. WORKDIR "/src/SpotifyService/SpotifyService"
  18. RUN dotnet build "SpotifyService.csproj" -c Release -o /app/build
  19. COPY . .
  20. WORKDIR "/src/IdentityProvider/IdentityProvider"
  21. RUN dotnet build "IdentityProvider.csproj" -c Release -o /app/build1
  22. COPY . .
  23. WORKDIR "/src/NemAnBlazor/NemAnBlazor"
  24. RUN dotnet build "NemAnBlazor.csproj" -c Release -o /app/build2
  25. COPY . .
  26. WORKDIR "/src/SpotifyWorker/SpotifyWorker"
  27. RUN dotnet build "SpotifyWorker.csproj" -c Release -o /app/build3
  28. FROM build AS publish
  29. RUN dotnet publish -c Release -o /app/publish "/src/SpotifyService/SpotifyService.csproj"
  30. RUN dotnet publish -c Release -o /app/publish1 "/src/IdentityProvider/IdentityProvider.csproj"
  31. RUN dotnet publish -c Release -o /app/publish2 "/src/NemAnBlazor/NemAnBlazor.csproj"
  32. RUN dotnet publish -c Release -o /app/publish3 "/src/SpotifyWorker/SpotifyWorker.csproj"
  33. FROM base AS final
  34. WORKDIR /app
  35. COPY --from=publish /app/publish .
  36. ENTRYPOINT ["dotnet", "SpotifyService.dll"]
  37. COPY --from=publish /app/publish1 .
  38. ENTRYPOINT ["dotnet", "IdentityProvider.dll"]
  39. COPY --from=publish /app/publish2 .
  40. ENTRYPOINT ["dotnet", "NemAnBlazor.dll"]
  41. COPY --from=publish /app/publish3 .
  42. ENTRYPOINT ["dotnet", "SpotifyWorker.dll"]