Switch from Caddy templates to runtime envsubst for API and Keycloak URLs, adjust Dockerfile and entrypoint script
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Successful in 8m31s
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Successful in 7m20s
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Successful in 2m1s
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Successful in 1m39s
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Successful in 8m31s
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Successful in 7m20s
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Successful in 2m1s
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Successful in 1m39s
This commit is contained in:
@@ -13,6 +13,9 @@ ARG BUILD_DATE
|
||||
# ===================================================================
|
||||
FROM caddy:${CADDY_VERSION}
|
||||
|
||||
# envsubst für Env-Var-Substitution zur Laufzeit
|
||||
RUN apk add --no-cache gettext
|
||||
|
||||
ARG VERSION
|
||||
ARG BUILD_DATE
|
||||
|
||||
@@ -21,13 +24,17 @@ LABEL service="web-app" \
|
||||
maintainer="Meldestelle Development Team" \
|
||||
build.date="${BUILD_DATE}"
|
||||
|
||||
# Copy Caddy Config & Templates
|
||||
# Copy Caddy Config & Entrypoint
|
||||
COPY config/docker/caddy/web-app/Caddyfile /etc/caddy/Caddyfile
|
||||
COPY config/docker/caddy/web-app/config.json /usr/share/caddy/config.json
|
||||
COPY config/docker/caddy/web-app/entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
||||
# Copy Pre-built Static Assets from Host
|
||||
# NOTE: You must run `./gradlew :frontend:shells:meldestelle-portal:jsBrowserDistribution -Pproduction=true` locally first!
|
||||
COPY frontend/shells/meldestelle-portal/build/dist/js/productionExecutable/ /usr/share/caddy/
|
||||
# index.html wird als Template abgelegt; der Entrypoint erzeugt daraus zur Laufzeit die finale index.html
|
||||
RUN mv /usr/share/caddy/index.html /usr/share/caddy/index.html.tmpl
|
||||
|
||||
# Ensure favicon exists (fallback)
|
||||
# Using the shared asset from existing config structure
|
||||
@@ -38,4 +45,5 @@ EXPOSE 4000
|
||||
HEALTHCHECK --interval=30s --timeout=5s --start-period=10s --retries=3 \
|
||||
CMD wget --no-verbose --tries=1 --spider http://localhost:4000/health || exit 1
|
||||
|
||||
ENTRYPOINT ["/entrypoint.sh"]
|
||||
CMD ["caddy", "run", "--config", "/etc/caddy/Caddyfile", "--adapter", "caddyfile"]
|
||||
|
||||
Reference in New Issue
Block a user