@@ -15,17 +15,11 @@ public static class KeycloakResourceBuilderExtensions
15
15
private const string AdminEnvVarName = "KC_BOOTSTRAP_ADMIN_USERNAME" ;
16
16
private const string AdminPasswordEnvVarName = "KC_BOOTSTRAP_ADMIN_PASSWORD" ;
17
17
private const string HealthCheckEnvVarName = "KC_HEALTH_ENABLED" ; // As per https://www.keycloak.org/observability/health
18
- private const string ProxyEdgeEnvVarName = "KC_PROXY" ;
19
- private const string HttpPortEnvVarName = "KC_HTTP_PORT" ;
20
18
private const string HttpEnabledEnvVarName = "KC_HTTP_ENABLED" ;
21
- private const string HostNamePortEnvVarName = "KC_HOSTNAME_PORT" ;
22
- private const string HostNameStrictBackchannelEnvVarName = "KC_HOSTNAME_STRICT_BACKCHANNEL" ;
23
19
private const string ProxyHeadersEnvVarName = "KC_PROXY_HEADERS" ;
24
20
private const string HostNameStrictEnvVarName = "KC_HOSTNAME_STRICT" ;
25
- private const string HostNameStrictHttpsEnvVarName = "KC_HOSTNAME_STRICT_HTTPS" ;
26
21
27
22
private const int DefaultContainerPort = 8080 ;
28
- private const int HttpsContainerPort = 8443 ;
29
23
private const int ManagementInterfaceContainerPort = 9000 ; // As per https://www.keycloak.org/server/management-interface
30
24
private const string ManagementEndpointName = "management" ;
31
25
private const string RealmImportDirectory = "/opt/keycloak/data/import" ;
@@ -66,21 +60,22 @@ public static IResourceBuilder<KeycloakResource> AddKeycloak(
66
60
67
61
var resource = new KeycloakResource ( name , adminUsername ? . Resource , passwordParameter ) ;
68
62
69
- var targetPort = port == HttpsContainerPort ? HttpsContainerPort : DefaultContainerPort ;
70
-
71
63
var keycloak = builder
72
64
. AddResource ( resource )
73
65
. WithImage ( KeycloakContainerImageTags . Image )
74
66
. WithImageRegistry ( KeycloakContainerImageTags . Registry )
75
67
. WithImageTag ( KeycloakContainerImageTags . Tag )
76
- . WithHttpEndpoint ( port : port , targetPort : targetPort )
68
+ . WithHttpEndpoint ( port : port , targetPort : DefaultContainerPort )
77
69
. WithHttpEndpoint ( targetPort : ManagementInterfaceContainerPort , name : ManagementEndpointName )
78
70
. WithHttpHealthCheck ( endpointName : ManagementEndpointName , path : "/health/ready" )
79
71
. WithEnvironment ( context =>
80
72
{
81
73
context . EnvironmentVariables [ AdminEnvVarName ] = resource . AdminReference ;
82
74
context . EnvironmentVariables [ AdminPasswordEnvVarName ] = resource . AdminPasswordParameter ;
83
75
context . EnvironmentVariables [ HealthCheckEnvVarName ] = "true" ;
76
+ context . EnvironmentVariables [ HttpEnabledEnvVarName ] = "true" ;
77
+ context . EnvironmentVariables [ ProxyHeadersEnvVarName ] = "xforwarded" ;
78
+ context . EnvironmentVariables [ HostNameStrictEnvVarName ] = "false" ;
84
79
} )
85
80
. WithUrlForEndpoint ( ManagementEndpointName , u => u . DisplayLocation = UrlDisplayLocation . DetailsOnly ) ;
86
81
0 commit comments