FROM mcr.microsoft.com/dotnet/aspnet:10.0-noble ARG APP_PORT=8080 RUN groupadd -r -g 10001 stella && useradd -r -u 10001 -g 10001 -d /var/lib/stella stella && mkdir -p /app /var/lib/stella /var/run/stella /tmp && chown -R 10001:10001 /app /var/lib/stella /var/run/stella /tmp WORKDIR /app COPY --chown=10001:10001 . ./ COPY --chown=10001:10001 healthcheck.sh /usr/local/bin/healthcheck.sh ENV ASPNETCORE_URLS=http://+:8080 DOTNET_EnableDiagnostics=0 COMPlus_EnableDiagnostics=0 APP_BINARY=StellaOps.Gateway.WebService RUN chmod 500 /app && chmod +x /usr/local/bin/healthcheck.sh && find /app -maxdepth 1 -type f -name '*.dll' -exec chmod 400 {} \; && find /app -maxdepth 1 -type f -name '*.json' -exec chmod 400 {} \; && chmod 500 /app/StellaOps.Gateway.WebService 2>/dev/null || true USER 10001:10001 EXPOSE 8080 HEALTHCHECK --interval=30s --timeout=5s --start-period=15s --retries=3 CMD /usr/local/bin/healthcheck.sh ENTRYPOINT [sh,-c,exec ./""]