diff --git a/bitnami/rabbitmq/4.0/debian-12/Dockerfile b/bitnami/rabbitmq/4.0/debian-12/Dockerfile index 76590cd17abe..5c33535877bf 100644 --- a/bitnami/rabbitmq/4.0/debian-12/Dockerfile +++ b/bitnami/rabbitmq/4.0/debian-12/Dockerfile @@ -8,11 +8,11 @@ ARG TARGETARCH LABEL com.vmware.cp.artifact.flavor="sha256:c50c90cfd9d12b445b011e6ad529f1ad3daea45c26d20b00732fae3cd71f6a83" \ org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \ - org.opencontainers.image.created="2024-11-21T23:58:00Z" \ + org.opencontainers.image.created="2024-11-25T10:53:49Z" \ org.opencontainers.image.description="Application packaged by Broadcom, Inc." \ org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/rabbitmq/README.md" \ org.opencontainers.image.licenses="Apache-2.0" \ - org.opencontainers.image.ref.name="4.0.4-debian-12-r0" \ + org.opencontainers.image.ref.name="4.0.4-debian-12-r1" \ org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/rabbitmq" \ org.opencontainers.image.title="rabbitmq" \ org.opencontainers.image.vendor="Broadcom, Inc." \ diff --git a/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/librabbitmq.sh b/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/librabbitmq.sh index 0059f094c697..df6407cf99a1 100644 --- a/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/librabbitmq.sh +++ b/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/librabbitmq.sh @@ -104,6 +104,7 @@ rabbitmq_validate() { check_yes_no_value "RABBITMQ_SECURE_PASSWORD" check_yes_no_value "RABBITMQ_ENABLE_LDAP" check_yes_no_value "RABBITMQ_LDAP_TLS" + check_yes_no_value "RABBITMQ_UPDATE_PASSWORD" check_conflicting_ports "RABBITMQ_MANAGEMENT_PORT_NUMBER" "RABBITMQ_NODE_PORT_NUMBER" "RABBITMQ_MANAGEMENT_SSL_PORT_NUMBER" "RABBITMQ_NODE_SSL_PORT_NUMBER" check_multi_value "RABBITMQ_SSL_VERIFY" "verify_none verify_peer" check_multi_value "RABBITMQ_MANAGEMENT_SSL_VERIFY" "verify_none verify_peer" @@ -837,6 +838,18 @@ rabbitmq_initialize() { warn "Forcing node to start..." debug_execute "${RABBITMQ_BIN_DIR}/rabbitmqctl" force_boot fi + if is_boolean_yes "$RABBITMQ_UPDATE_PASSWORD"; then + ! is_rabbitmq_running && rabbitmq_start_bg + if is_boolean_yes "$RABBITMQ_LOAD_DEFINITIONS"; then + if ! grep -q '"users"' "$RABBITMQ_DEFINITIONS_FILE"; then + info "Updating password" + rabbitmq_change_password "$RABBITMQ_USERNAME" "$RABBITMQ_PASSWORD" + fi + elif is_boolean_yes "$RABBITMQ_SECURE_PASSWORD"; then + info "Updating password" + rabbitmq_change_password "$RABBITMQ_USERNAME" "$RABBITMQ_PASSWORD" + fi + fi else ! is_rabbitmq_running && rabbitmq_start_bg if is_boolean_yes "$RABBITMQ_LOAD_DEFINITIONS"; then diff --git a/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/rabbitmq-env.sh b/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/rabbitmq-env.sh index 11a507125b44..b2e6eb3bdcbe 100644 --- a/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/rabbitmq-env.sh +++ b/bitnami/rabbitmq/4.0/debian-12/rootfs/opt/bitnami/scripts/rabbitmq-env.sh @@ -27,6 +27,7 @@ rabbitmq_env_vars=( RABBITMQ_CONF_FILE RABBITMQ_DEFINITIONS_FILE RABBITMQ_SECURE_PASSWORD + RABBITMQ_UPDATE_PASSWORD RABBITMQ_CLUSTER_NODE_NAME RABBITMQ_CLUSTER_PARTITION_HANDLING RABBITMQ_DISK_FREE_RELATIVE_LIMIT @@ -116,6 +117,7 @@ export RABBITMQ_DAEMON_GROUP="rabbitmq" # RabbitMQ settings export RABBITMQ_SECURE_PASSWORD="${RABBITMQ_SECURE_PASSWORD:-no}" +export RABBITMQ_UPDATE_PASSWORD="${RABBITMQ_UPDATE_PASSWORD:-no}" export RABBITMQ_CLUSTER_NODE_NAME="${RABBITMQ_CLUSTER_NODE_NAME:-}" export RABBITMQ_CLUSTER_PARTITION_HANDLING="${RABBITMQ_CLUSTER_PARTITION_HANDLING:-ignore}" export RABBITMQ_DISK_FREE_RELATIVE_LIMIT="${RABBITMQ_DISK_FREE_RELATIVE_LIMIT:-1.0}" diff --git a/bitnami/rabbitmq/README.md b/bitnami/rabbitmq/README.md index 8131fce992e2..9cd7f831c79b 100644 --- a/bitnami/rabbitmq/README.md +++ b/bitnami/rabbitmq/README.md @@ -160,6 +160,7 @@ docker-compose up -d | `RABBITMQ_CONF_FILE` | RabbitMQ configuration file. | `${RABBITMQ_CONF_DIR}/rabbitmq.conf` | | `RABBITMQ_DEFINITIONS_FILE` | Whether to load external RabbitMQ definitions. This is incompatible with setting the RabbitMQ password securely. | `/app/load_definition.json` | | `RABBITMQ_SECURE_PASSWORD` | Whether to set the RabbitMQ password securely. This is incompatible with loading external RabbitMQ definitions. | `no` | +| `RABBITMQ_UPDATE_PASSWORD` | Whether to update the password on container restart. | `no` | | `RABBITMQ_CLUSTER_NODE_NAME` | RabbitMQ cluster node name. When specifying this, ensure you also specify a valid hostname as RabbitMQ will fail to start otherwise. | `nil` | | `RABBITMQ_CLUSTER_PARTITION_HANDLING` | RabbitMQ cluster partition recovery mechanism. | `ignore` | | `RABBITMQ_DISK_FREE_RELATIVE_LIMIT` | Disk relative free space limit of the partition on which RabbitMQ is storing data. | `1.0` |