2025-05-27 11:32:05 +10:00
# See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging.
# This stage is used when running from VS in fast mode (Default for Debug configuration)
FROM 10.99.253.167:8090/dotnet/runtime:7.0 AS base
WORKDIR /app
# This stage is used to build the service project
FROM 10.99.253.167:8090/dotnet/sdk:7.0 AS build
ARG BUILD_CONFIGURATION = Release
WORKDIR /src
COPY [ "NuGet.config" , "." ]
COPY [ "PARR.AIHITRelationshipsSyncerWorker/PARR.AIHITRelationshipsSyncerWorker.csproj" , "PARR.AIHITRelationshipsSyncerWorker/" ]
COPY [ "PARR.AIHITRelationshipsSyncer/PARR.AIHITRelationshipsSyncer.csproj" , "PARR.AIHITRelationshipsSyncer/" ]
COPY [ "PARR.BLL/PARR.BLL.csproj" , "PARR.BLL/" ]
COPY [ "PARR.Common/PARR.Common.csproj" , "PARR.Common/" ]
COPY [ "PARR.Constants/PARR.Constants.csproj" , "PARR.Constants/" ]
COPY [ "PARR.DAL/PARR.DAL.csproj" , "PARR.DAL/" ]
RUN dotnet restore "./PARR.AIHITRelationshipsSyncerWorker/PARR.AIHITRelationshipsSyncerWorker.csproj"
COPY . .
WORKDIR "/src/PARR.AIHITRelationshipsSyncerWorker"
RUN dotnet build "./PARR.AIHITRelationshipsSyncerWorker.csproj" -c $BUILD_CONFIGURATION -o /app/build
# This stage is used to publish the service project to be copied to the final stage
FROM build AS publish
ARG BUILD_CONFIGURATION = Release
ARG app_version = 0 .0.0-default
RUN dotnet publish "./PARR.AIHITRelationshipsSyncerWorker.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost= false /p:Version= $app_version
# This stage is used in production or when running from VS in regular mode (Default when not using the Debug configuration)
FROM base AS final
WORKDIR /app
COPY --from= publish /app/publish .
2025-05-27 12:18:45 +10:00
# Fixes an old version TLS (AIH IT GVC)
RUN sed -i 's/DEFAULT@SECLEVEL=2/DEFAULT@SECLEVEL=1/g' /etc/ssl/openssl.cnf
2025-05-27 11:32:05 +10:00
ENTRYPOINT [ "dotnet" , "PARR.AIHITRelationshipsSyncerWorker.dll" ]