mirror of
https://github.com/bitnami/containers.git
synced 2026-10-19 09:48:25 +02:00
Signed-off-by: Andre Böhlke <ab@kryptance.de> Co-authored-by: Andre Böhlke <ab@kryptance.de>
This commit is contained in:
co-authored by
Andre Böhlke
parent
e2f0447a5b
commit
3511f34290
@@ -151,6 +151,7 @@ export KEYCLOAK_ROOT_LOG_LEVEL="${KEYCLOAK_ROOT_LOG_LEVEL:-INFO}"
|
||||
export KEYCLOAK_PROXY="${KEYCLOAK_PROXY:-passthrough}"
|
||||
export KEYCLOAK_PRODUCTION="${KEYCLOAK_PRODUCTION:-false}"
|
||||
export KEYCLOAK_EXTRA_ARGS_PREPENDED="${KEYCLOAK_EXTRA_ARGS_PREPENDED:-}"
|
||||
export KEYCLOAK_DATABASE_VENDOR="${KEYCLOAK_DATABASE_VENDOR:-postgresql}"
|
||||
KEYCLOAK_DATABASE_HOST="${KEYCLOAK_DATABASE_HOST:-"${DB_ADDR:-}"}"
|
||||
export KEYCLOAK_DATABASE_HOST="${KEYCLOAK_DATABASE_HOST:-postgresql}"
|
||||
KEYCLOAK_DATABASE_PORT="${KEYCLOAK_DATABASE_PORT:-"${DB_PORT:-}"}"
|
||||
|
||||
@@ -132,10 +132,14 @@ keycloak_configure_database() {
|
||||
jdbc_params="$(echo "$KEYCLOAK_JDBC_PARAMS" | sed -E '/^$|^\&.+$/!s/^/\&/;s/\&/\\&/g')"
|
||||
|
||||
info "Configuring database settings"
|
||||
keycloak_conf_set "db" "postgres"
|
||||
keycloak_conf_set "db-username" "$KEYCLOAK_DATABASE_USER"
|
||||
keycloak_conf_set "db-password" "$KEYCLOAK_DATABASE_PASSWORD"
|
||||
keycloak_conf_set "db-url" "jdbc:postgresql://${KEYCLOAK_DATABASE_HOST}:${KEYCLOAK_DATABASE_PORT}/${KEYCLOAK_DATABASE_NAME}?currentSchema=${KEYCLOAK_DATABASE_SCHEMA}${jdbc_params}"
|
||||
if [[ "KEYCLOAK_DATABASE_VENDOR" == "postgresql" ]]; then
|
||||
keycloak_conf_set "db" "postgres"
|
||||
keycloak_conf_set "db-username" "$KEYCLOAK_DATABASE_USER"
|
||||
keycloak_conf_set "db-password" "$KEYCLOAK_DATABASE_PASSWORD"
|
||||
keycloak_conf_set "db-url" "jdbc:postgresql://${KEYCLOAK_DATABASE_HOST}:${KEYCLOAK_DATABASE_PORT}/${KEYCLOAK_DATABASE_NAME}?currentSchema=${KEYCLOAK_DATABASE_SCHEMA}${jdbc_params}"
|
||||
else
|
||||
keycloak_conf_set "db" "$KEYCLOAK_DATABASE_VENDOR"
|
||||
fi
|
||||
}
|
||||
|
||||
########################
|
||||
@@ -276,17 +280,19 @@ keycloak_configure_spi_tls() {
|
||||
#########################
|
||||
keycloak_initialize() {
|
||||
# Clean to avoid issues when running docker restart
|
||||
# Wait for database
|
||||
info "Trying to connect to PostgreSQL server $KEYCLOAK_DATABASE_HOST..."
|
||||
if ! retry_while "wait-for-port --host $KEYCLOAK_DATABASE_HOST --timeout 10 $KEYCLOAK_DATABASE_PORT" "$KEYCLOAK_INIT_MAX_RETRIES"; then
|
||||
error "Unable to connect to host $KEYCLOAK_DATABASE_HOST"
|
||||
exit 1
|
||||
else
|
||||
info "Found PostgreSQL server listening at $KEYCLOAK_DATABASE_HOST:$KEYCLOAK_DATABASE_PORT"
|
||||
fi
|
||||
if [[ "KEYCLOAK_DATABASE_VENDOR" == "postgresql" ]]; then
|
||||
# Wait for database
|
||||
info "Trying to connect to PostgreSQL server $KEYCLOAK_DATABASE_HOST..."
|
||||
if ! retry_while "wait-for-port --host $KEYCLOAK_DATABASE_HOST --timeout 10 $KEYCLOAK_DATABASE_PORT" "$KEYCLOAK_INIT_MAX_RETRIES"; then
|
||||
error "Unable to connect to host $KEYCLOAK_DATABASE_HOST"
|
||||
exit 1
|
||||
else
|
||||
info "Found PostgreSQL server listening at $KEYCLOAK_DATABASE_HOST:$KEYCLOAK_DATABASE_PORT"
|
||||
fi
|
||||
|
||||
if ! is_dir_empty "$KEYCLOAK_MOUNTED_CONF_DIR"; then
|
||||
cp -Lr "$KEYCLOAK_MOUNTED_CONF_DIR"/* "$KEYCLOAK_CONF_DIR"
|
||||
if ! is_dir_empty "$KEYCLOAK_MOUNTED_CONF_DIR"; then
|
||||
cp -Lr "$KEYCLOAK_MOUNTED_CONF_DIR"/* "$KEYCLOAK_CONF_DIR"
|
||||
fi
|
||||
fi
|
||||
keycloak_configure_database
|
||||
keycloak_configure_metrics
|
||||
|
||||
@@ -82,7 +82,13 @@ The Bitnami Keycloak container can create a default admin user by setting the fo
|
||||
* `KEYCLOAK_MANAGEMENT_USER`: WildFly default management user. Default: **manager**.
|
||||
* `KEYCLOAK_MANAGEMENT_PASSWORD`: WildFly default management password. Default: **bitnami1**.
|
||||
|
||||
### Connecting to a PostgreSQL database
|
||||
### Connecting to a database
|
||||
|
||||
The Bitnami Keycloak container can connect to a database by setting the following environment variables:
|
||||
|
||||
- `KEYCLOAK_DATABASE_VENDOR`: Database vendor. Default: **postgres**. Use **dev-mem** or **dev-file** to use an in-memory or file-based database for development purposes.
|
||||
|
||||
### PostgreSQL database connection configuration
|
||||
|
||||
The Bitnami Keycloak container requires a PostgreSQL database to work. This is configured with the following environment variables:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user