diff --git a/bitnami/rabbitmq/3.9/debian-10/Dockerfile b/bitnami/rabbitmq/3.9/debian-10/Dockerfile index 5bcab944ad77..90ae9183128d 100644 --- a/bitnami/rabbitmq/3.9/debian-10/Dockerfile +++ b/bitnami/rabbitmq/3.9/debian-10/Dockerfile @@ -10,7 +10,7 @@ ENV HOME="/opt/bitnami/rabbitmq/.rabbitmq" \ COPY prebuildfs / # Install required system packages and dependencies RUN install_packages acl ca-certificates curl gzip libc6 libgcc1 libssl1.1 libstdc++6 libtinfo6 locales procps tar zlib1g -RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "erlang" "24.1.3-0" --checksum d3ae40e293a6ebc03a70eef22e0d7898193c8185a74323c44d804a5e95c6959d +RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "erlang" "24.1.4-0" --checksum 6e5a3f91f75a8a9346d6850ec4d9cdd4811d57e6816048767040671df7709b1c RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "rabbitmq" "3.9.8-0" --checksum 56d53e9c00321d310f992d5c93f705e31523a9eb12ee2bd20db40d924f9e3898 RUN . /opt/bitnami/scripts/libcomponent.sh && component_unpack "gosu" "1.14.0-0" --checksum 3e6fc37ca073b10a73a804d39c2f0c028947a1a596382a4f8ebe43dfbaa3a25e RUN chmod g+rwX /opt/bitnami @@ -24,7 +24,7 @@ COPY rootfs / RUN /opt/bitnami/scripts/rabbitmq/postunpack.sh RUN /opt/bitnami/scripts/locales/add-extra-locales.sh ENV BITNAMI_APP_NAME="rabbitmq" \ - BITNAMI_IMAGE_VERSION="3.9.8-debian-10-r11" \ + BITNAMI_IMAGE_VERSION="3.9.8-debian-10-r12" \ LANG="en_US.UTF-8" \ LANGUAGE="en_US:en" diff --git a/bitnami/rabbitmq/3.9/debian-10/docker-compose.yml b/bitnami/rabbitmq/3.9/debian-10/docker-compose.yml index 43e04b5ab2e8..9f5038416869 100644 --- a/bitnami/rabbitmq/3.9/debian-10/docker-compose.yml +++ b/bitnami/rabbitmq/3.9/debian-10/docker-compose.yml @@ -13,7 +13,7 @@ services: environment: - RABBITMQ_SECURE_PASSWORD=yes volumes: - - 'rabbitmq_data:/bitnami' + - 'rabbitmq_data:/bitnami/rabbitmq/mnesia' volumes: rabbitmq_data: driver: local diff --git a/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/.bitnami_components.json b/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/.bitnami_components.json index 0bb1a7fdd34b..747de52e8e57 100644 --- a/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/.bitnami_components.json +++ b/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/.bitnami_components.json @@ -1,10 +1,10 @@ { "erlang": { "arch": "amd64", - "digest": "d3ae40e293a6ebc03a70eef22e0d7898193c8185a74323c44d804a5e95c6959d", + "digest": "6e5a3f91f75a8a9346d6850ec4d9cdd4811d57e6816048767040671df7709b1c", "distro": "debian-10", "type": "NAMI", - "version": "24.1.3-0" + "version": "24.1.4-0" }, "gosu": { "arch": "amd64", diff --git a/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/scripts/libfs.sh b/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/scripts/libfs.sh index ae5e2459c377..b438c913341d 100644 --- a/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/scripts/libfs.sh +++ b/bitnami/rabbitmq/3.9/debian-10/prebuildfs/opt/bitnami/scripts/libfs.sh @@ -50,8 +50,9 @@ ensure_dir_exists() { # boolean ######################### is_dir_empty() { - local dir="${1:?missing directory}" - + local -r path="${1:?missing directory}" + # Calculate real path in order to avoid issues with symlinks + local -r dir="$(realpath "$path")" if [[ ! -e "$dir" ]] || [[ -z "$(ls -A "$dir")" ]]; then true else @@ -88,7 +89,7 @@ is_file_writable() { local dir dir="$(dirname "$file")" - if [[ ( -f "$file" && -w "$file" ) || ( ! -f "$file" && -d "$dir" && -w "$dir" ) ]]; then + if [[ (-f "$file" && -w "$file") || (! -f "$file" && -d "$dir" && -w "$dir") ]]; then true else false @@ -136,31 +137,31 @@ configure_permissions_ownership() { shift 1 while [ "$#" -gt 0 ]; do case "$1" in - -f|--file-mode) - shift - file_mode="${1:?missing mode for files}" - ;; - -d|--dir-mode) - shift - dir_mode="${1:?missing mode for directories}" - ;; - -u|--user) - shift - user="${1:?missing user}" - ;; - -g|--group) - shift - group="${1:?missing group}" - ;; - *) - echo "Invalid command line flag $1" >&2 - return 1 - ;; + -f | --file-mode) + shift + file_mode="${1:?missing mode for files}" + ;; + -d | --dir-mode) + shift + dir_mode="${1:?missing mode for directories}" + ;; + -u | --user) + shift + user="${1:?missing user}" + ;; + -g | --group) + shift + group="${1:?missing group}" + ;; + *) + echo "Invalid command line flag $1" >&2 + return 1 + ;; esac shift done - read -r -a filepaths <<< "$paths" + read -r -a filepaths <<<"$paths" for p in "${filepaths[@]}"; do if [[ -e "$p" ]]; then if [[ -n $dir_mode ]]; then diff --git a/bitnami/rabbitmq/3.9/debian-10/rootfs/opt/bitnami/scripts/rabbitmq/postunpack.sh b/bitnami/rabbitmq/3.9/debian-10/rootfs/opt/bitnami/scripts/rabbitmq/postunpack.sh index d4bb88ed0464..da7dfe22b746 100755 --- a/bitnami/rabbitmq/3.9/debian-10/rootfs/opt/bitnami/scripts/rabbitmq/postunpack.sh +++ b/bitnami/rabbitmq/3.9/debian-10/rootfs/opt/bitnami/scripts/rabbitmq/postunpack.sh @@ -19,12 +19,12 @@ for dir in "$RABBITMQ_BIN_DIR" "$RABBITMQ_CONF_DIR" "$RABBITMQ_DATA_DIR" "$RABBI done chmod -R g+rwX "$RABBITMQ_BIN_DIR" "$RABBITMQ_CONF_DIR" "$RABBITMQ_DATA_DIR" "$RABBITMQ_HOME_DIR" "$RABBITMQ_LIB_DIR" "$RABBITMQ_LOG_DIR" "$RABBITMQ_PLUGINS_DIR" + # Adding symlinks to upstream RabbitMQ paths to make the container compatible with the RabbitMQ Cluster Operator symlinks=( "/etc/rabbitmq=${RABBITMQ_CONF_DIR}" "/var/lib/rabbitmq=${RABBITMQ_HOME_DIR}" - "/var/lib/rabbitmq/mnesia=${RABBITMQ_DATA_DIR}" "/var/log/rabbitmq=${RABBITMQ_LOG_DIR}" ) @@ -33,3 +33,11 @@ for entry in "${symlinks[@]}"; do file="${entry#*=}" ln -s "$file" "$link" done + +# Special case for RabbitMQ mnesia dir, which will have a different symbolic linking to ensure compatibility with +# the RabbitMQ Cluster Operator + +mkdir -p "/var/lib/rabbitmq/mnesia" +chmod -R g+rwX "/var/lib/rabbitmq/mnesia" +rm -rf "$RABBITMQ_DATA_DIR" +ln -s "/var/lib/rabbitmq/mnesia" "$RABBITMQ_DATA_DIR" diff --git a/bitnami/rabbitmq/README.md b/bitnami/rabbitmq/README.md index f96096e27d19..4bd071188293 100644 --- a/bitnami/rabbitmq/README.md +++ b/bitnami/rabbitmq/README.md @@ -48,7 +48,7 @@ Non-root container images add an extra layer of security and are generally recom Learn more about the Bitnami tagging policy and the difference between rolling tags and immutable tags [in our documentation page](https://docs.bitnami.com/tutorials/understand-rolling-tags-containers/). -* [`3.9`, `3.9-debian-10`, `3.9.8`, `3.9.8-debian-10-r11`, `latest` (3.9/debian-10/Dockerfile)](https://github.com/bitnami/bitnami-docker-rabbitmq/blob/3.9.8-debian-10-r11/3.9/debian-10/Dockerfile) +* [`3.9`, `3.9-debian-10`, `3.9.8`, `3.9.8-debian-10-r12`, `latest` (3.9/debian-10/Dockerfile)](https://github.com/bitnami/bitnami-docker-rabbitmq/blob/3.9.8-debian-10-r12/3.9/debian-10/Dockerfile) * [`3.8`, `3.8-debian-10`, `3.8.23`, `3.8.23-debian-10-r36` (3.8/debian-10/Dockerfile)](https://github.com/bitnami/bitnami-docker-rabbitmq/blob/3.8.23-debian-10-r36/3.8/debian-10/Dockerfile) Subscribe to project updates by watching the [bitnami/rabbitmq GitHub repo](https://github.com/bitnami/bitnami-docker-rabbitmq). diff --git a/bitnami/rabbitmq/docker-compose-cluster.yml b/bitnami/rabbitmq/docker-compose-cluster.yml index 10fd9b6ad3a0..7d73f1dc1a6d 100644 --- a/bitnami/rabbitmq/docker-compose-cluster.yml +++ b/bitnami/rabbitmq/docker-compose-cluster.yml @@ -10,7 +10,7 @@ services: ports: - '15672:15672' volumes: - - 'rabbitmqstats_data:/bitnami' + - 'rabbitmqstats_data:/bitnami/rabbitmq/mnesia' queue-disc1: image: docker.io/bitnami/rabbitmq:3.9 environment: @@ -20,7 +20,7 @@ services: - RABBITMQ_ERL_COOKIE=s3cr3tc00ki3 - RABBITMQ_SECURE_PASSWORD=yes volumes: - - 'rabbitmqdisc1_data:/bitnami' + - 'rabbitmqdisc1_data:/bitnami/rabbitmq/mnesia' queue-ram1: image: docker.io/bitnami/rabbitmq:3.9 environment: @@ -30,7 +30,7 @@ services: - RABBITMQ_ERL_COOKIE=s3cr3tc00ki3 - RABBITMQ_SECURE_PASSWORD=yes volumes: - - 'rabbitmqram1_data:/bitnami' + - 'rabbitmqram1_data:/bitnami/rabbitmq/mnesia' volumes: rabbitmqstats_data: diff --git a/bitnami/rabbitmq/docker-compose-ldap.yml b/bitnami/rabbitmq/docker-compose-ldap.yml index 8e0d1b75e03a..07530d0e913a 100644 --- a/bitnami/rabbitmq/docker-compose-ldap.yml +++ b/bitnami/rabbitmq/docker-compose-ldap.yml @@ -11,7 +11,7 @@ services: - '25672:25672' - '15672:15672' volumes: - - 'rabbitmq_data:/bitnami/rabbitmq' + - 'rabbitmq_data:/bitnami/rabbitmq/mnesia' - ./config/advanced.config:/bitnami/rabbitmq/conf/advanced.config:ro environment: - BITNAMI_DEBUG=true diff --git a/bitnami/rabbitmq/docker-compose.yml b/bitnami/rabbitmq/docker-compose.yml index 43e04b5ab2e8..9f5038416869 100644 --- a/bitnami/rabbitmq/docker-compose.yml +++ b/bitnami/rabbitmq/docker-compose.yml @@ -13,7 +13,7 @@ services: environment: - RABBITMQ_SECURE_PASSWORD=yes volumes: - - 'rabbitmq_data:/bitnami' + - 'rabbitmq_data:/bitnami/rabbitmq/mnesia' volumes: rabbitmq_data: driver: local