fix(infra): use CMD-SHELL with /dev/tcp for health check

- Alpine-based image doesn't have curl
- CMD-SHELL provides bash with /dev/tcp support
- No external package installation needed

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
Lasse Rune Hansen 2026-06-05 12:52:04 +02:00
parent 438994cc42
commit bbda73dbeb

View file

@ -36,9 +36,6 @@ FROM build AS publish
FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS runtime FROM mcr.microsoft.com/dotnet/aspnet:9.0 AS runtime
WORKDIR /app WORKDIR /app
# Install curl for health checks (Alpine-based image doesn't include it)
RUN apk add --no-cache curl
# Copy published app from publish stage # Copy published app from publish stage
COPY --from=publish /app/publish . COPY --from=publish /app/publish .
@ -50,9 +47,9 @@ ENV ASPNETCORE_ENVIRONMENT=Production
# Expose port # Expose port
EXPOSE 8080 EXPOSE 8080
# Health check # Health check - use CMD-SHELL for bash /dev/tcp support
HEALTHCHECK --interval=30s --timeout=3s --start-period=10s --retries=3 \ HEALTHCHECK --interval=30s --timeout=3s --start-period=15s --retries=3 \
CMD curl -f http://localhost:8080/health || exit 1 CMD-SHELL echo > /dev/tcp/localhost/8080 || exit 1
# Entry point # Entry point
ENTRYPOINT ["dotnet", "GermanApp.dll"] ENTRYPOINT ["dotnet", "GermanApp.dll"]