@@ -113,7 +113,7 @@ ${e}`;
113
113
result += '# * KC_DB\n# * KC_HEALTH_ENABLED\n# * KC_HTTP_RELATIVE_PATH\n\n' ;
114
114
}
115
115
116
- result += '# Generated using script version 6 \n\n' ;
116
+ result += '# Generated using script version 7 \n\n' ;
117
117
118
118
return result ;
119
119
}
@@ -431,7 +431,7 @@ EOF`;
431
431
'init-config' : { condition : 'service_completed_successfully' } ,
432
432
'postgres' : { condition : 'service_healthy' }
433
433
} ,
434
- image : 'ghcr.io/cryptomator/keycloak:24 .0.4 ' ,
434
+ image : 'ghcr.io/cryptomator/keycloak:25 .0.6 ' ,
435
435
command : startCmd ,
436
436
volumes : [ 'kc-config:/opt/keycloak/data/import' ] ,
437
437
deploy : {
@@ -441,7 +441,7 @@ EOF`;
441
441
} ,
442
442
...( ! this . cfg . compose . includeTraefik && { ports : [ `${ this . getPort ( this . cfg . keycloak . publicUrl ) } :8080` ] } ) ,
443
443
healthcheck : {
444
- test : [ 'CMD' , 'curl' , '-f' , `http://localhost:8080 ${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/live` ] ,
444
+ test : [ 'CMD' , 'curl' , '-f' , `http://localhost:9000 ${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/live` ] ,
445
445
interval : '60s' ,
446
446
timeout : '3s' ,
447
447
} ,
@@ -454,10 +454,10 @@ EOF`;
454
454
KC_DB_USERNAME : 'keycloak' ,
455
455
KC_DB_PASSWORD : this . cfg . db . keycloakPw ,
456
456
KC_HEALTH_ENABLED : 'true' ,
457
- KC_HOSTNAME : devMode ? null : this . getHostname ( this . cfg . keycloak . publicUrl ) ,
457
+ KC_HOSTNAME : devMode ? null : 'https://' + this . getHostname ( this . cfg . keycloak . publicUrl ) ,
458
458
// KC_HOSTNAME_PORT: devMode ? null : this.getPort(this.cfg.keycloak.publicUrl), // FIXME as string!! FIXME does not work at all!!
459
459
KC_HTTP_ENABLED : 'true' ,
460
- KC_PROXY : 'edge ' ,
460
+ KC_PROXY_HEADERS : 'xforwarded ' ,
461
461
KC_HTTP_RELATIVE_PATH : this . getPathname ( this . cfg . keycloak . publicUrl ) ,
462
462
} ,
463
463
...( this . cfg . compose . includeTraefik && this . getTraefikConfig ( this . cfg . keycloak . publicUrl , 'kc' ) )
@@ -478,7 +478,7 @@ EOF`;
478
478
} ,
479
479
...( ! this . cfg . compose . includeTraefik && { ports : [ `${ this . getPort ( this . cfg . hub . publicUrl ) } :8080` ] } ) ,
480
480
healthcheck : {
481
- test : [ 'CMD-SHELL' , '(curl -f http://localhost:8080 /q/health/live && curl -f http://localhost:8080/api/config) || exit 1' ] ,
481
+ test : [ 'CMD-SHELL' , '(curl -f http://localhost:9000 /q/health/live && curl -f http://localhost:8080/api/config) || exit 1' ] ,
482
482
interval : '10s' ,
483
483
timeout : '3s' ,
484
484
} ,
@@ -657,7 +657,7 @@ class KubernetesConfigBuilder extends ConfigBuilder {
657
657
args : [
658
658
'/bin/sh' ,
659
659
'-c' ,
660
- `set -x; while ! wget -q --spider "http://keycloak-svc:8080 ${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/live" 2>>/dev/null; do sleep 10; done`
660
+ `set -x; while ! wget -q --spider "http://keycloak-svc:9000 ${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/live" 2>>/dev/null; do sleep 10; done`
661
661
]
662
662
} ] : [ ] ) ] ,
663
663
containers : [ {
@@ -775,11 +775,11 @@ class KubernetesConfigBuilder extends ConfigBuilder {
775
775
{ name : 'KC_DB_PASSWORD' , valueFrom : { secretKeyRef : { name : 'hub-secrets' , key : 'db_kc_pass' } } } ,
776
776
{ name : 'KC_HEALTH_ENABLED' , value : 'true' } ,
777
777
{ name : 'KC_HTTP_ENABLED' , value : 'true' } ,
778
- { name : 'KC_PROXY ' , value : 'edge ' } ,
778
+ { name : 'KC_PROXY_HEADERS ' , value : 'xforwarded ' } ,
779
779
{ name : 'KC_HTTP_RELATIVE_PATH' , value : this . getPathname ( this . cfg . keycloak . publicUrl ) }
780
780
] ;
781
781
if ( ! devMode ) {
782
- env . push ( { name : 'KC_HOSTNAME' , value : this . getHostname ( this . cfg . keycloak . publicUrl ) } ) ;
782
+ env . push ( { name : 'KC_HOSTNAME' , value : 'https://' + this . getHostname ( this . cfg . keycloak . publicUrl ) } ) ;
783
783
// env.push({name: 'KC_HOSTNAME_PORT', value: '' + this.getPort(this.cfg.keycloak.publicUrl)}); // FIXME as string!! FIXME does not work at all!!
784
784
}
785
785
let deployment = {
@@ -803,20 +803,20 @@ class KubernetesConfigBuilder extends ConfigBuilder {
803
803
} ] ,
804
804
containers : [ {
805
805
name : 'keycloak' ,
806
- image : 'ghcr.io/cryptomator/keycloak:24 .0.4 ' ,
806
+ image : 'ghcr.io/cryptomator/keycloak:25 .0.6 ' ,
807
807
command : startCmd ,
808
808
ports : [ { containerPort : 8080 } ] ,
809
809
resources : {
810
810
requests : { cpu : '25m' , memory : '512Mi' } ,
811
811
limits : { cpu : '1000m' , memory : '1024Mi' } ,
812
812
} ,
813
813
livenessProbe : {
814
- httpGet : { path : `${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/live` , port : 8080 } ,
814
+ httpGet : { path : `${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/live` , port : 9000 } ,
815
815
initialDelaySeconds : 120 ,
816
816
periodSeconds : 60
817
817
} ,
818
818
readinessProbe : {
819
- httpGet : { path : `${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/ready` , port : 8080 } ,
819
+ httpGet : { path : `${ this . getPathname ( HubSetup . urlWithTrailingSlash ( this . cfg . keycloak . publicUrl ) ) } health/ready` , port : 9000 } ,
820
820
initialDelaySeconds : 10 ,
821
821
periodSeconds : 3
822
822
} ,
@@ -878,7 +878,8 @@ class KubernetesConfigBuilder extends ConfigBuilder {
878
878
spec : {
879
879
selector : { app : 'keycloak' } ,
880
880
ports : [
881
- { protocol : 'TCP' , port : 8080 }
881
+ { protocol : 'TCP' , port : 8080 } ,
882
+ { protocol : 'TCP' , port : 9000 }
882
883
]
883
884
}
884
885
}
0 commit comments