From 8451e4de6796a05b9e38a9874ee9625f97cfab69 Mon Sep 17 00:00:00 2001 From: Bitnami Bot Date: Mon, 19 Feb 2024 15:19:44 +0100 Subject: [PATCH] [bitnami/nats] Release 2.10.11-debian-11-r1 (#62096) Signed-off-by: Bitnami Containers --- bitnami/nats/2/debian-11/Dockerfile | 4 +- .../rootfs/opt/bitnami/scripts/nats-env.sh | 1 + .../opt/bitnami/scripts/nats/entrypoint.sh | 6 +++ .../opt/bitnami/scripts/nats/postunpack.sh | 6 ++- bitnami/nats/README.md | 37 ++++++++++--------- 5 files changed, 33 insertions(+), 21 deletions(-) diff --git a/bitnami/nats/2/debian-11/Dockerfile b/bitnami/nats/2/debian-11/Dockerfile index 1fed9dbc27a1..7cf33d249052 100644 --- a/bitnami/nats/2/debian-11/Dockerfile +++ b/bitnami/nats/2/debian-11/Dockerfile @@ -7,10 +7,10 @@ ARG TARGETARCH LABEL com.vmware.cp.artifact.flavor="sha256:1e1b4657a77f0d47e9220f0c37b9bf7802581b93214fff7d1bd2364c8bf22e8e" \ org.opencontainers.image.base.name="docker.io/bitnami/minideb:bullseye" \ - org.opencontainers.image.created="2024-02-16T07:23:03Z" \ + org.opencontainers.image.created="2024-02-19T13:56:36Z" \ org.opencontainers.image.description="Application packaged by VMware, Inc" \ org.opencontainers.image.licenses="Apache-2.0" \ - org.opencontainers.image.ref.name="2.10.11-debian-11-r0" \ + org.opencontainers.image.ref.name="2.10.11-debian-11-r1" \ org.opencontainers.image.title="nats" \ org.opencontainers.image.vendor="VMware, Inc." \ org.opencontainers.image.version="2.10.11" diff --git a/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats-env.sh b/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats-env.sh index 044078b26071..f1bf19ad4bfa 100644 --- a/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats-env.sh +++ b/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats-env.sh @@ -65,6 +65,7 @@ unset nats_env_vars export NATS_BASE_DIR="${BITNAMI_ROOT_DIR}/nats" export NATS_BIN_DIR="${NATS_BASE_DIR}/bin" export NATS_CONF_DIR="${NATS_BASE_DIR}/conf" +export NATS_DEFAULT_CONF_DIR="${NATS_BASE_DIR}/conf.default" export NATS_LOGS_DIR="${NATS_BASE_DIR}/logs" export NATS_TMP_DIR="${NATS_BASE_DIR}/tmp" export NATS_VOLUME_DIR="${BITNAMI_VOLUME_DIR}/nats" diff --git a/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/entrypoint.sh b/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/entrypoint.sh index 7d3df7dc08dc..9add965b4be3 100755 --- a/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/entrypoint.sh +++ b/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/entrypoint.sh @@ -19,6 +19,12 @@ set -o pipefail print_welcome_page +# We add the copy from default config in the entrypoint to not break users +# bypassing the setup.sh logic. If the file already exists do not overwrite (in +# case someone mounts a configuration file in /opt/bitnami/nats/conf) +debug "Copying files from $NATS_DEFAULT_CONF_DIR to $NATS_CONF_DIR" +cp -nr "$NATS_DEFAULT_CONF_DIR"/. "$NATS_CONF_DIR" + if [[ "$*" = *"/opt/bitnami/scripts/nats/run.sh"* ]]; then info "** Starting NATS setup **" /opt/bitnami/scripts/nats/setup.sh diff --git a/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/postunpack.sh b/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/postunpack.sh index ddcbb874ab2c..4e87a967305c 100755 --- a/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/postunpack.sh +++ b/bitnami/nats/2/debian-11/rootfs/opt/bitnami/scripts/nats/postunpack.sh @@ -20,7 +20,7 @@ set -o pipefail # Ensure required directories exist chmod g+rwX "$NATS_BASE_DIR" -for dir in "$NATS_VOLUME_DIR" "$NATS_DATA_DIR" "$NATS_MOUNTED_CONF_DIR" "$NATS_CONF_DIR" "$NATS_LOGS_DIR" "$NATS_TMP_DIR" "$NATS_INITSCRIPTS_DIR"; do +for dir in "$NATS_VOLUME_DIR" "$NATS_DATA_DIR" "$NATS_MOUNTED_CONF_DIR" "$NATS_CONF_DIR" "$NATS_DEFAULT_CONF_DIR" "$NATS_LOGS_DIR" "$NATS_TMP_DIR" "$NATS_INITSCRIPTS_DIR"; do ensure_dir_exists "$dir" configure_permissions_ownership "$dir" -d "775" -f "664" done @@ -32,3 +32,7 @@ chmod g+rw "$NATS_CONF_FILE" # Redirect all logging to stdout ln -sf /dev/stdout "$NATS_LOG_FILE" + +# Copy all initially generated configuration files to the default directory +# (this is to avoid breaking when entrypoint is being overridden) +cp -r "${NATS_CONF_DIR}/"* "$NATS_DEFAULT_CONF_DIR" \ No newline at end of file diff --git a/bitnami/nats/README.md b/bitnami/nats/README.md index a588467a64cf..3873152e733f 100644 --- a/bitnami/nats/README.md +++ b/bitnami/nats/README.md @@ -186,24 +186,25 @@ docker-compose up -d #### Read-only environment variables -| Name | Description | Value | -|------------------------------------|------------------------------------------------------------------------------------------------|-------------------------------| -| `NATS_BASE_DIR` | NATS installation directory. | `${BITNAMI_ROOT_DIR}/nats` | -| `NATS_BIN_DIR` | NATS directory for binaries. | `${NATS_BASE_DIR}/bin` | -| `NATS_CONF_DIR` | NATS directory for configuration files. | `${NATS_BASE_DIR}/conf` | -| `NATS_LOGS_DIR` | NATS directory for log files. | `${NATS_BASE_DIR}/logs` | -| `NATS_TMP_DIR` | NATS directory for temporary files. | `${NATS_BASE_DIR}/tmp` | -| `NATS_VOLUME_DIR` | NATS persistence base directory. | `${BITNAMI_VOLUME_DIR}/nats` | -| `NATS_DATA_DIR` | NATS directory for data. | `${NATS_VOLUME_DIR}/data` | -| `NATS_MOUNTED_CONF_DIR` | Directory for including custom configuration files (that override the default generated ones). | `${NATS_VOLUME_DIR}/conf` | -| `NATS_INITSCRIPTS_DIR` | Path to NATS init scripts directory | `/docker-entrypoint-initdb.d` | -| `NATS_DAEMON_USER` | NATS system user. | `nats` | -| `NATS_DAEMON_GROUP` | NATS system group. | `nats` | -| `NATS_DEFAULT_BIND_ADDRESS` | Default NATS bind address to enable at build time. | `0.0.0.0` | -| `NATS_DEFAULT_CLIENT_PORT_NUMBER` | Default NATS CLIENT port number to enable at build time. | `4222` | -| `NATS_DEFAULT_HTTP_PORT_NUMBER` | Default NATS HTTP port number to enable at build time. | `8222` | -| `NATS_DEFAULT_HTTPS_PORT_NUMBER` | Default NATS HTTPS port number to enable at build time. | `8443` | -| `NATS_DEFAULT_CLUSTER_PORT_NUMBER` | Default NATS CLUSTER port number to enable at build time. | `6222` | +| Name | Description | Value | +|------------------------------------|------------------------------------------------------------------------------------------------|---------------------------------| +| `NATS_BASE_DIR` | NATS installation directory. | `${BITNAMI_ROOT_DIR}/nats` | +| `NATS_BIN_DIR` | NATS directory for binaries. | `${NATS_BASE_DIR}/bin` | +| `NATS_CONF_DIR` | NATS directory for configuration files. | `${NATS_BASE_DIR}/conf` | +| `NATS_DEFAULT_CONF_DIR` | NATS default directory for configuration files. | `${NATS_BASE_DIR}/conf.default` | +| `NATS_LOGS_DIR` | NATS directory for log files. | `${NATS_BASE_DIR}/logs` | +| `NATS_TMP_DIR` | NATS directory for temporary files. | `${NATS_BASE_DIR}/tmp` | +| `NATS_VOLUME_DIR` | NATS persistence base directory. | `${BITNAMI_VOLUME_DIR}/nats` | +| `NATS_DATA_DIR` | NATS directory for data. | `${NATS_VOLUME_DIR}/data` | +| `NATS_MOUNTED_CONF_DIR` | Directory for including custom configuration files (that override the default generated ones). | `${NATS_VOLUME_DIR}/conf` | +| `NATS_INITSCRIPTS_DIR` | Path to NATS init scripts directory | `/docker-entrypoint-initdb.d` | +| `NATS_DAEMON_USER` | NATS system user. | `nats` | +| `NATS_DAEMON_GROUP` | NATS system group. | `nats` | +| `NATS_DEFAULT_BIND_ADDRESS` | Default NATS bind address to enable at build time. | `0.0.0.0` | +| `NATS_DEFAULT_CLIENT_PORT_NUMBER` | Default NATS CLIENT port number to enable at build time. | `4222` | +| `NATS_DEFAULT_HTTP_PORT_NUMBER` | Default NATS HTTP port number to enable at build time. | `8222` | +| `NATS_DEFAULT_HTTPS_PORT_NUMBER` | Default NATS HTTPS port number to enable at build time. | `8443` | +| `NATS_DEFAULT_CLUSTER_PORT_NUMBER` | Default NATS CLUSTER port number to enable at build time. | `6222` | When you start the NATS image, you can adjust the configuration of the instance by passing one or more environment variables either on the docker-compose file or on the `docker run` command line. If you want to add a new environment variable: