mirror of
https://github.com/meysamhadeli/booking-microservices.git
synced 2026-04-14 20:54:05 +08:00
38 lines
963 B
Docker
38 lines
963 B
Docker
FROM mcr.microsoft.com/dotnet/sdk:7.0 AS builder
|
|
WORKDIR /src
|
|
|
|
# Setup working directory for the project
|
|
WORKDIR /src
|
|
COPY ./src/BuildingBlocks/BuildingBlocks.csproj ./BuildingBlocks/
|
|
COPY ./src/ApiGateway/src/ApiGateway.csproj ./ApiGateway/src/
|
|
|
|
|
|
# Restore nuget packages
|
|
RUN dotnet restore ./ApiGateway/src/ApiGateway.csproj
|
|
|
|
# Copy project files
|
|
COPY ./src/BuildingBlocks ./BuildingBlocks/
|
|
COPY ./src/ApiGateway/src ./ApiGateway/src/
|
|
|
|
# Build project with Release configuration
|
|
# and no restore, as we did it already
|
|
|
|
RUN ls
|
|
RUN dotnet build -c Release --no-restore ./ApiGateway/src/ApiGateway.csproj
|
|
|
|
WORKDIR /src/ApiGateway/src
|
|
|
|
# Publish project to output folder
|
|
# and no build, as we did it already
|
|
RUN dotnet publish -c Release --no-build -o out
|
|
|
|
FROM mcr.microsoft.com/dotnet/aspnet:7.0
|
|
|
|
# Setup working directory for the project
|
|
WORKDIR /app
|
|
COPY --from=builder /src/ApiGateway/src/out .
|
|
EXPOSE 80
|
|
EXPOSE 443
|
|
ENTRYPOINT ["dotnet", "ApiGateway.dll"]
|
|
|