+14
-7
@@ -1,14 +1,20 @@
|
||||
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
|
||||
ARG BUILD_CONFIGURATION=Release
|
||||
WORKDIR /src/api
|
||||
WORKDIR /src
|
||||
|
||||
# Copy the project file and restore first to leverage Docker layer caching
|
||||
COPY api.csproj ./
|
||||
RUN dotnet restore api.csproj
|
||||
COPY api/api.csproj api/
|
||||
COPY api-models/api-models.csproj api-models/
|
||||
COPY cv-matcher-api-models/cv-matcher-api-models.csproj cv-matcher-api-models/
|
||||
COPY startup-helpers/startup-helpers.csproj startup-helpers/startup-helpers/
|
||||
|
||||
# Copy only the api project files to avoid bringing other projects into the build context
|
||||
COPY . ./
|
||||
RUN dotnet publish api.csproj -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
|
||||
RUN dotnet restore api/api.csproj
|
||||
|
||||
COPY api/ api/
|
||||
COPY api-models/ api-models/
|
||||
COPY cv-matcher-api-models/ cv-matcher-api-models/
|
||||
COPY startup-helpers/ startup-helpers/
|
||||
|
||||
RUN dotnet publish api/api.csproj -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
|
||||
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS final
|
||||
WORKDIR /app
|
||||
@@ -16,4 +22,5 @@ EXPOSE 8080
|
||||
ENV ASPNETCORE_URLS=http://0.0.0.0:8080
|
||||
|
||||
COPY --from=build /app/publish .
|
||||
|
||||
ENTRYPOINT ["dotnet", "api.dll"]
|
||||
Reference in New Issue
Block a user