FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
ARG PROJECT=Inventory
WORKDIR /source
COPY . .
RUN dotnet restore src/${PROJECT}.Api --locked-mode
RUN dotnet publish src/${PROJECT}.Api -c Release --no-restore -o /out

FROM mcr.microsoft.com/dotnet/aspnet:10.0
ARG PROJECT=Inventory
ENV API_PROJECT=${PROJECT}
WORKDIR /app
COPY --from=build /out .
USER root
RUN mkdir /data && chown $APP_UID /data
USER $APP_UID
ENV ASPNETCORE_URLS=http://+:8080 DatabasePath=/data/business-v2.db
EXPOSE 8080
ENTRYPOINT ["sh", "-c", "exec dotnet \"$API_PROJECT.Api.dll\""]

