#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM mcr.microsoft.com/dotnet/aspnet:7.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443

FROM mcr.microsoft.com/dotnet/sdk:7.0 AS build
WORKDIR /src
COPY Components ./Components
COPY nuget.config .
COPY ["BMA.EHR.Recurit.Exam.Service.csproj", "."]
RUN dotnet restore "./BMA.EHR.Recurit.Exam.Service.csproj"
COPY . .
WORKDIR "/src/."
RUN dotnet build "BMA.EHR.Recurit.Exam.Service.csproj" -c Release -o /app/build

FROM build AS publish
RUN dotnet publish "BMA.EHR.Recurit.Exam.Service.csproj" -c Release -o /app/publish /p:UseAppHost=false

FROM base AS final

RUN apt-get update && apt-get -y install fontconfig && apt-get install -y --allow-unauthenticated libgdiplus libc6-dev
COPY ./Fonts/THSarabunIT.ttf /usr/share/fonts/truetype/
COPY ./Fonts/THSarabunITBold.ttf /usr/share/fonts/truetype/
COPY ./Fonts/THSarabunITItalic.ttf /usr/share/fonts/truetype/
COPY ./Fonts/THSarabunITBoldItalic.ttf /usr/share/fonts/truetype/
COPY ./Fonts/THSarabunNew.ttf /usr/share/fonts/truetype/
COPY ./Fonts/THSarabunNewBold.ttf /usr/share/fonts/truetype/
COPY ./Fonts/THSarabunNewItalic.ttf /usr/share/fonts/truetype/
COPY ./Fonts/THSarabunNewBoldItalic.ttf /usr/share/fonts/truetype/
RUN fc-cache -f -v

WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "BMA.EHR.Recurit.Exam.Service.dll"]   