binary1ne commited on
Commit
632dfd4
·
verified ·
1 Parent(s): 1d6ffa8

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +31 -9
Dockerfile CHANGED
@@ -1,17 +1,39 @@
1
- # -----------------------------
2
- # Keycloak with in-memory DB (no persistence)
3
- # -----------------------------
4
- ARG KEYCLOAK_VERSION=25.0.6
5
- FROM quay.io/keycloak/keycloak:${KEYCLOAK_VERSION}
6
 
 
 
 
 
 
 
 
 
7
  ENV KEYCLOAK_ADMIN=admin \
8
  KEYCLOAK_ADMIN_PASSWORD=admin
9
 
10
- # Expose Hugging Face default port
11
  EXPOSE 7860
12
 
13
- # Start Keycloak in dev mode (in-memory DB, no Liquibase errors)
 
 
 
 
 
 
 
 
 
 
 
 
 
14
  ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
15
- # CMD ["start-dev", "--http-port=7860", "--hostname-strict=false", "--hostname=0.0.0.0"]
16
- CMD ["start-dev", "--http-port=7860", "--hostname-strict=false", "--hostname=binary1ne-keyclock.hf.space"]
17
 
 
 
 
 
 
 
 
 
1
+ FROM quay.io/keycloak/keycloak:25.0.6 as builder
 
 
 
 
2
 
3
+ # Build Keycloak with default options (H2 in-memory for POC)
4
+ RUN /opt/keycloak/bin/kc.sh build
5
+
6
+ FROM quay.io/keycloak/keycloak:25.0.6
7
+
8
+ WORKDIR /opt/keycloak
9
+
10
+ # Admin credentials
11
  ENV KEYCLOAK_ADMIN=admin \
12
  KEYCLOAK_ADMIN_PASSWORD=admin
13
 
14
+ # Expose HTTPS port (7860 instead of 8443)
15
  EXPOSE 7860
16
 
17
+ # Generate a self-signed certificate (Java keystore)
18
+ RUN mkdir -p /opt/keycloak/certs && \
19
+ keytool -genkeypair \
20
+ -storepass password \
21
+ -keypass password \
22
+ -keyalg RSA \
23
+ -keysize 2048 \
24
+ -dname "CN=localhost" \
25
+ -alias keycloak \
26
+ -keystore /opt/keycloak/certs/keycloak.jks
27
+
28
+ # Let KC_HOSTNAME be injected dynamically by environment / Kubernetes
29
+ ENV KC_HOSTNAME=0.0.0.0
30
+
31
  ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
 
 
32
 
33
+ # Run Keycloak HTTPS on 7860 with self-signed cert
34
+ CMD ["start", \
35
+ "--https-port=7860", \
36
+ "--https-key-store-file=/opt/keycloak/certs/keycloak.jks", \
37
+ "--https-key-store-password=password", \
38
+ "--hostname-strict=false", \
39
+ "--hostname=${KC_HOSTNAME}"]