Parcourir la source

Added Dockerfile

dev^2
Nemanja Grkovic il y a 3 ans
Parent
révision
026757cd6e
1 fichiers modifiés avec 21 ajouts et 67 suppressions
  1. 21
    67
      Dockerfile

+ 21
- 67
Dockerfile Voir le fichier

@@ -1,83 +1,37 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base

WORKDIR /app

EXPOSE 80

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 NemAn.sln ./
COPY SpotifyWorker/*.csproj ./SpotifyWorker/
COPY SpotifyService/*.csproj ./SpotifyService/
COPY GrpcShared/*.csproj ./GrpcShared/
COPY IdentityProvider/*.csproj ./IdentityProvider/
COPY NemAnBlazor/*.csproj ./NemAnBlazor/

RUN dotnet restore
COPY . .
WORKDIR /src/SpotifyWorker
RUN dotnet build -c Release -o /app

WORKDIR "/src/SpotifyService/SpotifyService"
WORKDIR /src/SpotifyService
RUN dotnet build -c Release -o /app

RUN dotnet build "SpotifyService.csproj" -c Release -o /app/build
WORKDIR /src/GrpcShared
RUN dotnet build -c Release -o /app

COPY . .

WORKDIR "/src/IdentityProvider/IdentityProvider"

RUN dotnet build "IdentityProvider.csproj" -c Release -o /app/build1

COPY . .
WORKDIR /src/IdentityProvider
RUN dotnet build -c Release -o /app

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
WORKDIR /src/NemAnBlazor
RUN dotnet build -c Release -o /app

FROM build AS publish

RUN dotnet publish -c Release -o /app/publish "/src/SpotifyService/SpotifyService.csproj"

RUN dotnet publish -c Release -o /app/publish1 "/src/IdentityProvider/IdentityProvider.csproj"

RUN dotnet publish -c Release -o /app/publish2 "/src/NemAnBlazor/NemAnBlazor.csproj"

RUN dotnet publish -c Release -o /app/publish3 "/src/SpotifyWorker/SpotifyWorker.csproj"
RUN dotnet publish -c Release -o /app

FROM base AS final

WORKDIR /app

COPY --from=publish /app/publish .

ENTRYPOINT ["dotnet", "SpotifyService.dll"]

COPY --from=publish /app/publish1 .

ENTRYPOINT ["dotnet", "IdentityProvider.dll"]

COPY --from=publish /app/publish2 .

ENTRYPOINT ["dotnet", "NemAnBlazor.dll"]

COPY --from=publish /app/publish3 .

ENTRYPOINT ["dotnet", "SpotifyWorker.dll"]
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "SpotifyService.dll"]

Chargement…
Annuler
Enregistrer