| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- FROM quay.io/keycloak/keycloak:latest AS builder
- # Build arguments
- ARG KC_DB_USERNAME
- ARG KC_DB_PASSWORD
- # Debug-Ausgabe
- RUN echo "Build ARG KC_DB_USERNAME: ${KC_DB_USERNAME}"
- RUN echo "Build ARG KC_DB_PASSWORD: ${KC_DB_PASSWORD}"
- # Konfiguration für Build
- ENV KC_DB=postgres
- ENV KC_HEALTH_ENABLED=true
- ENV KC_METRICS_ENABLED=true
- ENV KC_FEATURES="token-exchange,scripts,preview,admin-api"
- # SSL-Konfiguration
- WORKDIR /opt/keycloak
- RUN keytool -genkeypair -storepass password -storetype PKCS12 -keyalg RSA -keysize 2048 \
- -dname "CN=server" -alias server -ext "SAN:c=DNS:localhost,IP:127.0.0.1" -keystore conf/server.keystore
- # Optimierter Build
- RUN /opt/keycloak/bin/kc.sh build
- FROM quay.io/keycloak/keycloak:latest
- COPY --from=builder /opt/keycloak/ /opt/keycloak/
- # Runtime Konfiguration
- ENV KC_DB=postgres
- ENV KC_DB_URL=jdbc:postgresql://keycloak-db:5432/keycloak
- ENV KC_DB_USERNAME=${KC_DB_USERNAME}
- ENV KC_DB_PASSWORD=${KC_DB_PASSWORD}
- ENV KC_PROXY=edge
- ENV KC_PROXY_ADDRESS_FORWARDING=true
- ENV KC_HTTP_ENABLED=true
- ENV KC_HOSTNAME=auth.mrx8086.com
- ENV KC_HOSTNAME_STRICT=false
- WORKDIR /opt/keycloak
- ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
|