[bitnami/postgresql-repmgr] Release 17.5.0-debian-12-r10 (#82238)

Signed-off-by: Bitnami Bot <bitnami.bot@broadcom.com>
This commit is contained in:
Bitnami Bot
2025-06-12 18:42:53 +02:00
committed by GitHub
parent 56723a1c8e
commit f188c5e0da
6 changed files with 126 additions and 138 deletions

View File

@@ -8,10 +8,10 @@ ARG TARGETARCH
LABEL com.vmware.cp.artifact.flavor="sha256:c50c90cfd9d12b445b011e6ad529f1ad3daea45c26d20b00732fae3cd71f6a83" \
org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \
org.opencontainers.image.created="2025-06-11T19:11:08Z" \
org.opencontainers.image.created="2025-06-12T15:27:22Z" \
org.opencontainers.image.description="Application packaged by Broadcom, Inc." \
org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/postgresql-repmgr/README.md" \
org.opencontainers.image.ref.name="17.5.0-debian-12-r9" \
org.opencontainers.image.ref.name="17.5.0-debian-12-r10" \
org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/postgresql-repmgr" \
org.opencontainers.image.title="postgresql-repmgr" \
org.opencontainers.image.vendor="Broadcom, Inc." \
@@ -28,7 +28,7 @@ SHELL ["/bin/bash", "-o", "errexit", "-o", "nounset", "-o", "pipefail", "-c"]
RUN install_packages ca-certificates curl libbrotli1 libbsd0 libcom-err2 libcurl4 libedit2 libffi8 libgcc-s1 libgmp10 libgnutls30 libgssapi-krb5-2 libhogweed6 libicu72 libidn2-0 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.5-0 liblz4-1 liblzma5 libmd0 libnettle8 libnghttp2-14 libp11-kit0 libpcre3 libpsl5 libreadline8 librtmp1 libsasl2-2 libsqlite3-0 libssh2-1 libssl3 libstdc++6 libtasn1-6 libtinfo6 libunistring2 libuuid1 libxml2 libxslt1.1 libzstd1 locales procps zlib1g
RUN mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ || exit 1 ; \
COMPONENTS=( \
"postgresql-repmgr-17.5.0-7-linux-${OS_ARCH}-debian-12" \
"postgresql-repmgr-17.5.0-8-linux-${OS_ARCH}-debian-12" \
) ; \
for COMPONENT in "${COMPONENTS[@]}"; do \
if [ ! -f "${COMPONENT}.tar.gz" ]; then \

View File

@@ -3,6 +3,6 @@
"arch": "amd64",
"distro": "debian-12",
"type": "NAMI",
"version": "17.5.0-7"
"version": "17.5.0-8"
}
}

View File

@@ -464,13 +464,10 @@ postgresql_configure_synchronous_replication() {
local synchronous_standby_names=""
info "Configuring synchronous_replication"
# Check if user provided list of replication nodes, else - read and transform from POSTGRESQL_CLUSTER_APP_NAME
if [[ -n $REPMGR_REPLICATION_NODES ]]; then
replication_nodes="\"${REPMGR_REPLICATION_NODES}\""
# Check for comma separate values
# When using repmgr, POSTGRESQL_CLUSTER_APP_NAME will contain the list of nodes to be synchronous
# This list need to cleaned from other things but node names.
elif [[ "$POSTGRESQL_CLUSTER_APP_NAME" == *","* ]]; then
if [[ "$POSTGRESQL_CLUSTER_APP_NAME" == *","* ]]; then
read -r -a nodes <<<"$(tr ',;' ' ' <<<"${POSTGRESQL_CLUSTER_APP_NAME}")"
for node in "${nodes[@]}"; do
[[ "$node" =~ ^(([^:/?#]+):)?// ]] || node="tcp://${node}"

View File

@@ -111,11 +111,6 @@ repmgr_validate() {
error_code=1
}
if [[ -n "$REPMGR_REPLICATION_NODES" ]]; then
if [[ ! "$REPMGR_REPLICATION_NODES" =~ ^([^,]+-[0-9]+)(,([^,]+-[0-9]+))*$ ]]; then
print_validation_error "REPMGR_REPLICATION_NODES must be a comma separated list of valid node names. Valid format: ^([^,]+-[0-9]+)(,([^,]+-[0-9]+))*$"
fi
fi
if [[ -z "$REPMGR_PARTNER_NODES" ]]; then
print_validation_error "The list of partner nodes cannot be empty. Set the environment variable REPMGR_PARTNER_NODES with a comma separated list of partner nodes."
fi

View File

@@ -443,7 +443,6 @@ export REPMGR_CONNECT_TIMEOUT="${REPMGR_CONNECT_TIMEOUT:-5}"
export REPMGR_RECONNECT_ATTEMPTS="${REPMGR_RECONNECT_ATTEMPTS:-3}"
export REPMGR_RECONNECT_INTERVAL="${REPMGR_RECONNECT_INTERVAL:-5}"
export REPMGR_PARTNER_NODES="${REPMGR_PARTNER_NODES:-}"
export REPMGR_REPLICATION_NODES="${REPMGR_REPLICATION_NODES:-}"
export REPMGR_PRIMARY_HOST="${REPMGR_PRIMARY_HOST:-}"
export REPMGR_PRIMARY_PORT="${REPMGR_PRIMARY_PORT:-5432}"
export REPMGR_USE_REPLICATION_SLOTS="${REPMGR_USE_REPLICATION_SLOTS:-1}"

View File

@@ -34,8 +34,6 @@ Non-root container images add an extra layer of security and are generally recom
Deploying Bitnami applications as Helm Charts is the easiest way to get started with our applications on Kubernetes. Read more about the installation in the [Bitnami PostgreSQL HA Chart GitHub repository](https://github.com/bitnami/charts/tree/master/bitnami/postgresql-ha).
Bitnami containers can be used with [Kubeapps](https://kubeapps.dev/) for deployment and management of Helm Charts in clusters.
## Only the latest stable branch maintained in the free Bitnami catalog
Starting December 10th, 2024, only the latest stable branch of each container image will receive updates in the free Bitnami catalog. To access up-to-date releases for all upstream-supported branches (e.g., LTS), consider upgrading to Bitnami Premium. Previously released versions will not be deleted and will remain available for pulling from DockerHub.
@@ -548,128 +546,127 @@ Refer to [issues/27124](https://github.com/bitnami/containers/issues/27124) for
#### Customizable environment variables
| Name | Description | Default Value |
|--------------------------------------------|------------------------------------------------------------------------------------------------------|--------------------------------------------|
| `POSTGRESQL_VOLUME_DIR` | Persistence base directory | `/bitnami/postgresql` |
| `POSTGRESQL_DATA_DIR` | PostgreSQL data directory | `${POSTGRESQL_VOLUME_DIR}/data` |
| `POSTGRESQL_EXTRA_FLAGS` | Extra flags for PostgreSQL initialization | `nil` |
| `POSTGRESQL_INIT_MAX_TIMEOUT` | Maximum initialization waiting timeout | `60` |
| `POSTGRESQL_PGCTLTIMEOUT` | Maximum waiting timeout for pg_ctl commands | `60` |
| `POSTGRESQL_SHUTDOWN_MODE` | Default mode for pg_ctl stop command | `fast` |
| `POSTGRESQL_CLUSTER_APP_NAME` | Replication cluster default application name | `walreceiver` |
| `POSTGRESQL_DATABASE` | Default PostgreSQL database | `postgres` |
| `POSTGRESQL_INITDB_ARGS` | Optional args for PostreSQL initdb operation | `nil` |
| `ALLOW_EMPTY_PASSWORD` | Allow password-less access | `no` |
| `POSTGRESQL_INITDB_WAL_DIR` | Optional init db wal directory | `nil` |
| `POSTGRESQL_MASTER_HOST` | PostgreSQL master host (used by slaves) | `nil` |
| `POSTGRESQL_MASTER_PORT_NUMBER` | PostgreSQL master host port (used by slaves) | `5432` |
| `POSTGRESQL_NUM_SYNCHRONOUS_REPLICAS` | Number of PostgreSQL replicas that should use synchronous replication | `0` |
| `POSTGRESQL_SYNCHRONOUS_REPLICAS_MODE` | PostgreSQL synchronous replication mode (values: empty, FIRST, ANY) | `nil` |
| `POSTGRESQL_PORT_NUMBER` | PostgreSQL port number | `5432` |
| `POSTGRESQL_ALLOW_REMOTE_CONNECTIONS` | Modify pg_hba settings so users can access from the outside | `yes` |
| `POSTGRESQL_REPLICATION_MODE` | PostgreSQL replication mode (values: master, slave) | `master` |
| `POSTGRESQL_REPLICATION_USER` | PostgreSQL replication user | `nil` |
| `POSTGRESQL_REPLICATION_USE_PASSFILE` | Use PGPASSFILE instead of PGPASSWORD | `no` |
| `POSTGRESQL_REPLICATION_PASSFILE_PATH` | Path to store passfile | `${POSTGRESQL_CONF_DIR}/.pgpass` |
| `POSTGRESQL_SR_CHECK` | Create user on PostgreSQL for Stream Replication Check | `no` |
| `POSTGRESQL_SR_CHECK_USERNAME` | Stream Replication Check user | `sr_check_user` |
| `POSTGRESQL_SR_CHECK_DATABASE` | Stream Replication Check database | `postgres` |
| `POSTGRESQL_SYNCHRONOUS_COMMIT_MODE` | Enable synchronous replication in slaves (number defined by POSTGRESQL_NUM_SYNCHRONOUS_REPLICAS) | `on` |
| `POSTGRESQL_FSYNC` | Enable fsync in write ahead logs | `on` |
| `POSTGRESQL_USERNAME` | PostgreSQL default username | `postgres` |
| `POSTGRESQL_ENABLE_LDAP` | Enable LDAP for PostgreSQL authentication | `no` |
| `POSTGRESQL_LDAP_URL` | PostgreSQL LDAP server url (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_PREFIX` | PostgreSQL LDAP prefix (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SUFFIX` | PostgreSQL LDAP suffix (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SERVER` | PostgreSQL LDAP server (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_PORT` | PostgreSQL LDAP port (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SCHEME` | PostgreSQL LDAP scheme (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_TLS` | PostgreSQL LDAP tls setting (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_BASE_DN` | PostgreSQL LDAP base DN settings (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_BIND_DN` | PostgreSQL LDAP bind DN settings (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_BIND_PASSWORD` | PostgreSQL LDAP bind password (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SEARCH_ATTR` | PostgreSQL LDAP search attribute (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SEARCH_FILTER` | PostgreSQL LDAP search filter (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_INITSCRIPTS_USERNAME` | Username for the psql scripts included in /docker-entrypoint.initdb | `$POSTGRESQL_USERNAME` |
| `POSTGRESQL_PASSWORD` | Password for the PostgreSQL created user | `nil` |
| `POSTGRESQL_POSTGRES_PASSWORD` | Password for the PostgreSQL postgres user | `nil` |
| `POSTGRESQL_REPLICATION_PASSWORD` | Password for the PostgreSQL replication user | `nil` |
| `POSTGRESQL_SR_CHECK_PASSWORD` | Password for the Stream Replication Check user | `nil` |
| `POSTGRESQL_INITSCRIPTS_PASSWORD` | Password for the PostgreSQL init scripts user | `$POSTGRESQL_PASSWORD` |
| `POSTGRESQL_ENABLE_TLS` | Whether to enable TLS for traffic or not | `no` |
| `POSTGRESQL_TLS_CERT_FILE` | File containing the certificate for the TLS traffic | `nil` |
| `POSTGRESQL_TLS_KEY_FILE` | File containing the key for certificate | `nil` |
| `POSTGRESQL_TLS_CA_FILE` | File containing the CA of the certificate | `nil` |
| `POSTGRESQL_TLS_CRL_FILE` | File containing a Certificate Revocation List | `nil` |
| `POSTGRESQL_TLS_PREFER_SERVER_CIPHERS` | Whether to use the server TLS cipher preferences rather than the client | `yes` |
| `POSTGRESQL_SHARED_PRELOAD_LIBRARIES` | List of libraries to preload at PostgreSQL initialization | `pgaudit` |
| `POSTGRESQL_PGAUDIT_LOG` | Comma-separated list of actions to log with pgaudit | `nil` |
| `POSTGRESQL_PGAUDIT_LOG_CATALOG` | Enable pgaudit log catalog (pgaudit.log_catalog setting) | `nil` |
| `POSTGRESQL_PGAUDIT_LOG_PARAMETER` | Enable pgaudit log parameter (pgaudit.log_parameter setting) | `nil` |
| `POSTGRESQL_LOG_CONNECTIONS` | Add a log entry per user connection | `nil` |
| `POSTGRESQL_LOG_DISCONNECTIONS` | Add a log entry per user disconnection | `nil` |
| `POSTGRESQL_LOG_HOSTNAME` | Log the client host name when accessing | `nil` |
| `POSTGRESQL_CLIENT_MIN_MESSAGES` | Set log level of errors to send to the client | `error` |
| `POSTGRESQL_LOG_LINE_PREFIX` | Set the format of the log lines | `nil` |
| `POSTGRESQL_LOG_TIMEZONE` | Set the log timezone | `nil` |
| `POSTGRESQL_TIMEZONE` | Set the timezone | `nil` |
| `POSTGRESQL_MAX_CONNECTIONS` | Set the maximum amount of connections | `nil` |
| `POSTGRESQL_TCP_KEEPALIVES_IDLE` | Set the TCP keepalive idle time | `nil` |
| `POSTGRESQL_TCP_KEEPALIVES_INTERVAL` | Set the TCP keepalive interval time | `nil` |
| `POSTGRESQL_TCP_KEEPALIVES_COUNT` | Set the TCP keepalive count | `nil` |
| `POSTGRESQL_STATEMENT_TIMEOUT` | Set the SQL statement timeout | `nil` |
| `POSTGRESQL_PGHBA_REMOVE_FILTERS` | Comma-separated list of strings for removing pg_hba.conf lines (example: md5, local) | `nil` |
| `POSTGRESQL_USERNAME_CONNECTION_LIMIT` | Set the user connection limit | `nil` |
| `POSTGRESQL_POSTGRES_CONNECTION_LIMIT` | Set the postgres user connection limit | `nil` |
| `POSTGRESQL_WAL_LEVEL` | Set the write-ahead log level | `replica` |
| `POSTGRESQL_DEFAULT_TOAST_COMPRESSION` | Set the postgres default compression | `nil` |
| `POSTGRESQL_PASSWORD_ENCRYPTION` | Set the passwords encryption method | `nil` |
| `POSTGRESQL_DEFAULT_TRANSACTION_ISOLATION` | Set transaction isolation | `nil` |
| `POSTGRESQL_PERFORM_RESTORE` | Flag to skip deletion of `recovery.signal` file to enable native recovery. e.g by using `wal-g` | `no` |
| `POSTGRESQL_AUTOCTL_CONF_DIR` | Path to the configuration dir for the pg_autoctl command | `${POSTGRESQL_AUTOCTL_VOLUME_DIR}/.config` |
| `POSTGRESQL_AUTOCTL_MODE` | pgAutoFailover node type, valid values [monitor, postgres] | `postgres` |
| `POSTGRESQL_AUTOCTL_MONITOR_HOST` | Hostname for the monitor component | `monitor` |
| `POSTGRESQL_AUTOCTL_HOSTNAME` | Hostname by which postgres is reachable | `$(hostname --fqdn)` |
| `REPMGR_DATA_DIR` | Replication Manager data directory | `${REPMGR_VOLUME_DIR}/repmgr/data` |
| `REPMGR_NODE_ID` | Replication Manager node identifier | `nil` |
| `REPMGR_NODE_ID_START_SEED` | Replication Manager node identifier start seed | `1000` |
| `REPMGR_NODE_NAME` | Replication Manager node name | `$(hostname)` |
| `REPMGR_NODE_NETWORK_NAME` | Replication Manager node network name | `nil` |
| `REPMGR_NODE_PRIORITY` | Replication Manager node priority | `100` |
| `REPMGR_NODE_LOCATION` | Replication Manager node location | `default` |
| `REPMGR_NODE_TYPE` | Replication Manager node type | `data` |
| `REPMGR_PORT_NUMBER` | Replication Manager port number | `5432` |
| `REPMGR_LOG_LEVEL` | Replication Manager logging level | `NOTICE` |
| `REPMGR_USE_PGREWIND` | (Experimental) Use pg_rewind to synchronize from primary node | `no` |
| `REPMGR_START_OPTIONS` | Options to add when starting the node | `nil` |
| `REPMGR_CONNECT_TIMEOUT` | Replication Manager node connection timeout (in seconds) | `5` |
| `REPMGR_RECONNECT_ATTEMPTS` | Number of attempts to connect to the cluster before failing | `3` |
| `REPMGR_RECONNECT_INTERVAL` | Replication Manager node reconnect interval (in seconds) | `5` |
| `REPMGR_PARTNER_NODES` | List of other Replication Manager nodes in the cluster | `nil` |
| `REPMGR_REPLICATION_NODES` | List of replication nodes. It is used as a value for synchronous_standby_names in postgresql.conf. Should be specified if REPMGR_NODE_NAME differs from REPMGR_NODE_NETWORK_NAME | `nil` |
| `REPMGR_PRIMARY_HOST` | Replication Manager cluster primary node | `nil` |
| `REPMGR_PRIMARY_PORT` | Replication Manager cluster primary node port | `5432` |
| `REPMGR_USE_REPLICATION_SLOTS` | Replication Manager replication slots | `1` |
| `REPMGR_MASTER_RESPONSE_TIMEOUT` | Time (in seconds) to wait for the master to reply | `20` |
| `REPMGR_PRIMARY_VISIBILITY_CONSENSUS` | Replication Manager flag to enable consult each other to build a quorum | `false` |
| `REPMGR_MONITORING_HISTORY` | Replication Manager flag to enable monitoring history | `no` |
| `REPMGR_MONITOR_INTERVAL_SECS` | Replication Manager interval at which to write monitoring data | `2` |
| `REPMGR_DEGRADED_MONITORING_TIMEOUT` | Replication Manager degraded monitoring timeout | `5` |
| `REPMGR_UPGRADE_EXTENSION` | Replication Manager upgrade extension | `no` |
| `REPMGR_FENCE_OLD_PRIMARY` | Replication Manager fence old primary | `no` |
| `REPMGR_FAILOVER` | Replication failover mode | `automatic` |
| `REPMGR_CHILD_NODES_CHECK_INTERVAL` | Replication Manager time interval to check nodes | `5` |
| `REPMGR_CHILD_NODES_CONNECTED_MIN_COUNT` | Replication Manager minimal connected nodes | `1` |
| `REPMGR_CHILD_NODES_DISCONNECT_TIMEOUT` | Replication Manager disconnected nodes timeout | `30` |
| `REPMGR_SWITCH_ROLE` | Flag to switch current node role | `no` |
| `REPMGR_CURRENT_PRIMARY_HOST` | Current primary host | `nil` |
| `REPMGR_USERNAME` | Replication manager username | `repmgr` |
| `REPMGR_DATABASE` | Replication manager database | `repmgr` |
| `REPMGR_PGHBA_TRUST_ALL` | Add trust all in Replication Manager pg_hba.conf | `no` |
| `REPMGR_PASSWORD` | Replication manager password | `nil` |
| `REPMGR_USE_PASSFILE` | Use PGPASSFILE instead of PGPASSWORD | `nil` |
| `REPMGR_PASSFILE_PATH` | Path to store passfile | `$REPMGR_CONF_DIR/.pgpass` |
| `PGCONNECT_TIMEOUT` | PostgreSQL connection timeout | `10` |
| Name | Description | Default Value |
|--------------------------------------------|--------------------------------------------------------------------------------------------------|--------------------------------------------|
| `POSTGRESQL_VOLUME_DIR` | Persistence base directory | `/bitnami/postgresql` |
| `POSTGRESQL_DATA_DIR` | PostgreSQL data directory | `${POSTGRESQL_VOLUME_DIR}/data` |
| `POSTGRESQL_EXTRA_FLAGS` | Extra flags for PostgreSQL initialization | `nil` |
| `POSTGRESQL_INIT_MAX_TIMEOUT` | Maximum initialization waiting timeout | `60` |
| `POSTGRESQL_PGCTLTIMEOUT` | Maximum waiting timeout for pg_ctl commands | `60` |
| `POSTGRESQL_SHUTDOWN_MODE` | Default mode for pg_ctl stop command | `fast` |
| `POSTGRESQL_CLUSTER_APP_NAME` | Replication cluster default application name | `walreceiver` |
| `POSTGRESQL_DATABASE` | Default PostgreSQL database | `postgres` |
| `POSTGRESQL_INITDB_ARGS` | Optional args for PostreSQL initdb operation | `nil` |
| `ALLOW_EMPTY_PASSWORD` | Allow password-less access | `no` |
| `POSTGRESQL_INITDB_WAL_DIR` | Optional init db wal directory | `nil` |
| `POSTGRESQL_MASTER_HOST` | PostgreSQL master host (used by slaves) | `nil` |
| `POSTGRESQL_MASTER_PORT_NUMBER` | PostgreSQL master host port (used by slaves) | `5432` |
| `POSTGRESQL_NUM_SYNCHRONOUS_REPLICAS` | Number of PostgreSQL replicas that should use synchronous replication | `0` |
| `POSTGRESQL_SYNCHRONOUS_REPLICAS_MODE` | PostgreSQL synchronous replication mode (values: empty, FIRST, ANY) | `nil` |
| `POSTGRESQL_PORT_NUMBER` | PostgreSQL port number | `5432` |
| `POSTGRESQL_ALLOW_REMOTE_CONNECTIONS` | Modify pg_hba settings so users can access from the outside | `yes` |
| `POSTGRESQL_REPLICATION_MODE` | PostgreSQL replication mode (values: master, slave) | `master` |
| `POSTGRESQL_REPLICATION_USER` | PostgreSQL replication user | `nil` |
| `POSTGRESQL_REPLICATION_USE_PASSFILE` | Use PGPASSFILE instead of PGPASSWORD | `no` |
| `POSTGRESQL_REPLICATION_PASSFILE_PATH` | Path to store passfile | `${POSTGRESQL_CONF_DIR}/.pgpass` |
| `POSTGRESQL_SR_CHECK` | Create user on PostgreSQL for Stream Replication Check | `no` |
| `POSTGRESQL_SR_CHECK_USERNAME` | Stream Replication Check user | `sr_check_user` |
| `POSTGRESQL_SR_CHECK_DATABASE` | Stream Replication Check database | `postgres` |
| `POSTGRESQL_SYNCHRONOUS_COMMIT_MODE` | Enable synchronous replication in slaves (number defined by POSTGRESQL_NUM_SYNCHRONOUS_REPLICAS) | `on` |
| `POSTGRESQL_FSYNC` | Enable fsync in write ahead logs | `on` |
| `POSTGRESQL_USERNAME` | PostgreSQL default username | `postgres` |
| `POSTGRESQL_ENABLE_LDAP` | Enable LDAP for PostgreSQL authentication | `no` |
| `POSTGRESQL_LDAP_URL` | PostgreSQL LDAP server url (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_PREFIX` | PostgreSQL LDAP prefix (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SUFFIX` | PostgreSQL LDAP suffix (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SERVER` | PostgreSQL LDAP server (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_PORT` | PostgreSQL LDAP port (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SCHEME` | PostgreSQL LDAP scheme (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_TLS` | PostgreSQL LDAP tls setting (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_BASE_DN` | PostgreSQL LDAP base DN settings (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_BIND_DN` | PostgreSQL LDAP bind DN settings (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_BIND_PASSWORD` | PostgreSQL LDAP bind password (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SEARCH_ATTR` | PostgreSQL LDAP search attribute (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_LDAP_SEARCH_FILTER` | PostgreSQL LDAP search filter (requires POSTGRESQL_ENABLE_LDAP=yes) | `nil` |
| `POSTGRESQL_INITSCRIPTS_USERNAME` | Username for the psql scripts included in /docker-entrypoint.initdb | `$POSTGRESQL_USERNAME` |
| `POSTGRESQL_PASSWORD` | Password for the PostgreSQL created user | `nil` |
| `POSTGRESQL_POSTGRES_PASSWORD` | Password for the PostgreSQL postgres user | `nil` |
| `POSTGRESQL_REPLICATION_PASSWORD` | Password for the PostgreSQL replication user | `nil` |
| `POSTGRESQL_SR_CHECK_PASSWORD` | Password for the Stream Replication Check user | `nil` |
| `POSTGRESQL_INITSCRIPTS_PASSWORD` | Password for the PostgreSQL init scripts user | `$POSTGRESQL_PASSWORD` |
| `POSTGRESQL_ENABLE_TLS` | Whether to enable TLS for traffic or not | `no` |
| `POSTGRESQL_TLS_CERT_FILE` | File containing the certificate for the TLS traffic | `nil` |
| `POSTGRESQL_TLS_KEY_FILE` | File containing the key for certificate | `nil` |
| `POSTGRESQL_TLS_CA_FILE` | File containing the CA of the certificate | `nil` |
| `POSTGRESQL_TLS_CRL_FILE` | File containing a Certificate Revocation List | `nil` |
| `POSTGRESQL_TLS_PREFER_SERVER_CIPHERS` | Whether to use the server TLS cipher preferences rather than the client | `yes` |
| `POSTGRESQL_SHARED_PRELOAD_LIBRARIES` | List of libraries to preload at PostgreSQL initialization | `pgaudit` |
| `POSTGRESQL_PGAUDIT_LOG` | Comma-separated list of actions to log with pgaudit | `nil` |
| `POSTGRESQL_PGAUDIT_LOG_CATALOG` | Enable pgaudit log catalog (pgaudit.log_catalog setting) | `nil` |
| `POSTGRESQL_PGAUDIT_LOG_PARAMETER` | Enable pgaudit log parameter (pgaudit.log_parameter setting) | `nil` |
| `POSTGRESQL_LOG_CONNECTIONS` | Add a log entry per user connection | `nil` |
| `POSTGRESQL_LOG_DISCONNECTIONS` | Add a log entry per user disconnection | `nil` |
| `POSTGRESQL_LOG_HOSTNAME` | Log the client host name when accessing | `nil` |
| `POSTGRESQL_CLIENT_MIN_MESSAGES` | Set log level of errors to send to the client | `error` |
| `POSTGRESQL_LOG_LINE_PREFIX` | Set the format of the log lines | `nil` |
| `POSTGRESQL_LOG_TIMEZONE` | Set the log timezone | `nil` |
| `POSTGRESQL_TIMEZONE` | Set the timezone | `nil` |
| `POSTGRESQL_MAX_CONNECTIONS` | Set the maximum amount of connections | `nil` |
| `POSTGRESQL_TCP_KEEPALIVES_IDLE` | Set the TCP keepalive idle time | `nil` |
| `POSTGRESQL_TCP_KEEPALIVES_INTERVAL` | Set the TCP keepalive interval time | `nil` |
| `POSTGRESQL_TCP_KEEPALIVES_COUNT` | Set the TCP keepalive count | `nil` |
| `POSTGRESQL_STATEMENT_TIMEOUT` | Set the SQL statement timeout | `nil` |
| `POSTGRESQL_PGHBA_REMOVE_FILTERS` | Comma-separated list of strings for removing pg_hba.conf lines (example: md5, local) | `nil` |
| `POSTGRESQL_USERNAME_CONNECTION_LIMIT` | Set the user connection limit | `nil` |
| `POSTGRESQL_POSTGRES_CONNECTION_LIMIT` | Set the postgres user connection limit | `nil` |
| `POSTGRESQL_WAL_LEVEL` | Set the write-ahead log level | `replica` |
| `POSTGRESQL_DEFAULT_TOAST_COMPRESSION` | Set the postgres default compression | `nil` |
| `POSTGRESQL_PASSWORD_ENCRYPTION` | Set the passwords encryption method | `nil` |
| `POSTGRESQL_DEFAULT_TRANSACTION_ISOLATION` | Set transaction isolation | `nil` |
| `POSTGRESQL_PERFORM_RESTORE` | Flag to skip deletion of `recovery.signal` file to enable native recovery. e.g by using `wal-g` | `no` |
| `POSTGRESQL_AUTOCTL_CONF_DIR` | Path to the configuration dir for the pg_autoctl command | `${POSTGRESQL_AUTOCTL_VOLUME_DIR}/.config` |
| `POSTGRESQL_AUTOCTL_MODE` | pgAutoFailover node type, valid values [monitor, postgres] | `postgres` |
| `POSTGRESQL_AUTOCTL_MONITOR_HOST` | Hostname for the monitor component | `monitor` |
| `POSTGRESQL_AUTOCTL_HOSTNAME` | Hostname by which postgres is reachable | `$(hostname --fqdn)` |
| `REPMGR_DATA_DIR` | Replication Manager data directory | `${REPMGR_VOLUME_DIR}/repmgr/data` |
| `REPMGR_NODE_ID` | Replication Manager node identifier | `nil` |
| `REPMGR_NODE_ID_START_SEED` | Replication Manager node identifier start seed | `1000` |
| `REPMGR_NODE_NAME` | Replication Manager node name | `$(hostname)` |
| `REPMGR_NODE_NETWORK_NAME` | Replication Manager node network name | `nil` |
| `REPMGR_NODE_PRIORITY` | Replication Manager node priority | `100` |
| `REPMGR_NODE_LOCATION` | Replication Manager node location | `default` |
| `REPMGR_NODE_TYPE` | Replication Manager node type | `data` |
| `REPMGR_PORT_NUMBER` | Replication Manager port number | `5432` |
| `REPMGR_LOG_LEVEL` | Replication Manager logging level | `NOTICE` |
| `REPMGR_USE_PGREWIND` | (Experimental) Use pg_rewind to synchronize from primary node | `no` |
| `REPMGR_START_OPTIONS` | Options to add when starting the node | `nil` |
| `REPMGR_CONNECT_TIMEOUT` | Replication Manager node connection timeout (in seconds) | `5` |
| `REPMGR_RECONNECT_ATTEMPTS` | Number of attempts to connect to the cluster before failing | `3` |
| `REPMGR_RECONNECT_INTERVAL` | Replication Manager node reconnect interval (in seconds) | `5` |
| `REPMGR_PARTNER_NODES` | List of other Replication Manager nodes in the cluster | `nil` |
| `REPMGR_PRIMARY_HOST` | Replication Manager cluster primary node | `nil` |
| `REPMGR_PRIMARY_PORT` | Replication Manager cluster primary node port | `5432` |
| `REPMGR_USE_REPLICATION_SLOTS` | Replication Manager replication slots | `1` |
| `REPMGR_MASTER_RESPONSE_TIMEOUT` | Time (in seconds) to wait for the master to reply | `20` |
| `REPMGR_PRIMARY_VISIBILITY_CONSENSUS` | Replication Manager flag to enable consult each other to build a quorum | `false` |
| `REPMGR_MONITORING_HISTORY` | Replication Manager flag to enable monitoring history | `no` |
| `REPMGR_MONITOR_INTERVAL_SECS` | Replication Manager interval at which to write monitoring data | `2` |
| `REPMGR_DEGRADED_MONITORING_TIMEOUT` | Replication Manager degraded monitoring timeout | `5` |
| `REPMGR_UPGRADE_EXTENSION` | Replication Manager upgrade extension | `no` |
| `REPMGR_FENCE_OLD_PRIMARY` | Replication Manager fence old primary | `no` |
| `REPMGR_FAILOVER` | Replication failover mode | `automatic` |
| `REPMGR_CHILD_NODES_CHECK_INTERVAL` | Replication Manager time interval to check nodes | `5` |
| `REPMGR_CHILD_NODES_CONNECTED_MIN_COUNT` | Replication Manager minimal connected nodes | `1` |
| `REPMGR_CHILD_NODES_DISCONNECT_TIMEOUT` | Replication Manager disconnected nodes timeout | `30` |
| `REPMGR_SWITCH_ROLE` | Flag to switch current node role | `no` |
| `REPMGR_CURRENT_PRIMARY_HOST` | Current primary host | `nil` |
| `REPMGR_USERNAME` | Replication manager username | `repmgr` |
| `REPMGR_DATABASE` | Replication manager database | `repmgr` |
| `REPMGR_PGHBA_TRUST_ALL` | Add trust all in Replication Manager pg_hba.conf | `no` |
| `REPMGR_PASSWORD` | Replication manager password | `nil` |
| `REPMGR_USE_PASSFILE` | Use PGPASSFILE instead of PGPASSWORD | `nil` |
| `REPMGR_PASSFILE_PATH` | Path to store passfile | `$REPMGR_CONF_DIR/.pgpass` |
| `PGCONNECT_TIMEOUT` | PostgreSQL connection timeout | `10` |
#### Read-only environment variables