binary1ne commited on
Commit
fbe46dc
·
verified ·
1 Parent(s): 4014ce2

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +38 -0
Dockerfile ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # -----------------------------
2
+ # Keycloak with SQLite (POC)
3
+ # -----------------------------
4
+
5
+ ARG KEYCLOAK_VERSION=25.0
6
+ FROM quay.io/keycloak/keycloak:${KEYCLOAK_VERSION} AS builder
7
+
8
+ # Enable health & metrics (optional but useful)
9
+ ENV KC_HEALTH_ENABLED=true \
10
+ KC_METRICS_ENABLED=true
11
+
12
+ # Build Keycloak runtime (Quarkus optimized)
13
+ RUN /opt/keycloak/bin/kc.sh build
14
+
15
+ # -----------------------------
16
+ # Runtime image
17
+ # -----------------------------
18
+ FROM quay.io/keycloak/keycloak:${KEYCLOAK_VERSION}
19
+
20
+ # Default to SQLite database
21
+ ENV KC_DB=sqlite \
22
+ KC_DB_URL=jdbc:sqlite:/opt/keycloak/data/keycloak.db \
23
+ KEYCLOAK_ADMIN=admin \
24
+ KEYCLOAK_ADMIN_PASSWORD=admin \
25
+ KC_HEALTH_ENABLED=true \
26
+ KC_METRICS_ENABLED=true
27
+
28
+ # Copy optimized server from builder stage
29
+ COPY --from=builder /opt/keycloak/ /opt/keycloak/
30
+
31
+ # Persist DB file in container volume
32
+ VOLUME ["/opt/keycloak/data"]
33
+
34
+ # Expose admin/dev ports
35
+ EXPOSE 8080 8443
36
+
37
+ ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
38
+ CMD ["start", "--optimized"]