FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build

WORKDIR /src
COPY . .

RUN dotnet restore \
    HappyGopher/HappyGopher.csproj

RUN dotnet publish \
    HappyGopher/HappyGopher.csproj \
    --configuration Release \
    --output /app/publish \
    --no-restore \
    /p:UseAppHost=false

FROM mcr.microsoft.com/dotnet/runtime:10.0

WORKDIR /app
COPY --from=build /app/publish .

RUN mkdir -p /app/data \
    && chown -R $APP_UID /app/data

EXPOSE 70

USER $APP_UID

ENTRYPOINT ["dotnet", "HappyGopher.dll"]
