1
0

Create Dockerfile.

This commit is contained in:
Kevin Matsubara 2025-09-03 18:54:14 +02:00
parent f269208cbc
commit b238d3214d

32
Dockerfile Normal file
View File

@ -0,0 +1,32 @@
# Stage 1: Base runtime
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS base
WORKDIR /app
EXPOSE 8080
# Stage 2: Build
FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build
WORKDIR /src
# Copy the solution file
COPY ["ImperialRecruitment.sln", "./"]
# Copy all project files (so restore works with project references)
COPY ["IR.Blazor/IR.Blazor.csproj", "IR.Blazor/"]
COPY ["IR.Data/IR.Data.csproj", "IR.Data/"]
COPY ["IR.Domain/IR.Domain.csproj", "IR.Domain/"]
# Restore packages
RUN dotnet restore "./ImperialRecruitment.sln"
# Copy the rest of the source
COPY . .
# Publish only the Blazor Server project
WORKDIR "/src/IR.Blazor"
RUN dotnet publish -c Release -o /app/publish
# Stage 3: Runtime container
FROM base AS final
WORKDIR /app
COPY --from=build /app/publish .
ENTRYPOINT ["dotnet", "IR.Blazor.dll"]