From a92dbef1d340c5cc2914b0cebce4a3f7d2757c45 Mon Sep 17 00:00:00 2001 From: Bitnami Bot Date: Tue, 14 Jul 2026 09:30:13 +0200 Subject: [PATCH] [bitnami/memcached] Release 1.6.45-debian-12-r1 (#95606) Signed-off-by: Bitnami Bot --- bitnami/memcached/1/debian-12/Dockerfile | 4 +-- .../opt/bitnami/scripts/libmemcached.sh | 18 ++++++++++++ .../opt/bitnami/scripts/memcached-env.sh | 12 ++++++++ .../opt/bitnami/scripts/memcached/run.sh | 8 +++++ bitnami/memcached/README.md | 29 +++++++++++-------- 5 files changed, 57 insertions(+), 14 deletions(-) diff --git a/bitnami/memcached/1/debian-12/Dockerfile b/bitnami/memcached/1/debian-12/Dockerfile index 48a15a9bc19b..ef349d011419 100644 --- a/bitnami/memcached/1/debian-12/Dockerfile +++ b/bitnami/memcached/1/debian-12/Dockerfile @@ -7,7 +7,7 @@ ARG DOWNLOADS_URL="https://downloads.bitnami.com/files/stacksmith" ARG TARGETARCH LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \ - org.opencontainers.image.created="2026-07-10T05:48:46Z" \ + org.opencontainers.image.created="2026-07-14T07:10:45Z" \ org.opencontainers.image.description="Application packaged by Broadcom, Inc." \ org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/memcached/README.md" \ org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/memcached" \ @@ -51,7 +51,7 @@ COPY rootfs / RUN /opt/bitnami/scripts/memcached/postunpack.sh ENV APP_VERSION="1.6.45" \ BITNAMI_APP_NAME="memcached" \ - IMAGE_REVISION="0" \ + IMAGE_REVISION="1" \ PATH="/opt/bitnami/memcached/bin:/opt/bitnami/common/sbin:$PATH" EXPOSE 11211 diff --git a/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/libmemcached.sh b/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/libmemcached.sh index c88f27b2761c..bbd5f2d0244b 100644 --- a/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/libmemcached.sh +++ b/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/libmemcached.sh @@ -61,6 +61,24 @@ memcached_validate() { print_validation_error "The variable MEMCACHED_MAX_ITEM_SIZE must be positive integer" fi + # TLS validation + if [[ "${MEMCACHED_TLS_ENABLED:-no}" == "yes" ]]; then + if [[ -z "${MEMCACHED_TLS_CERT_FILE}" ]]; then + print_validation_error "TLS is enabled but MEMCACHED_TLS_CERT_FILE is not set" + elif [[ ! -f "${MEMCACHED_TLS_CERT_FILE}" ]]; then + print_validation_error "TLS certificate file '${MEMCACHED_TLS_CERT_FILE}' does not exist" + fi + if [[ -n "${MEMCACHED_TLS_KEY_FILE}" && ! -f "${MEMCACHED_TLS_KEY_FILE}" ]]; then + print_validation_error "TLS key file '${MEMCACHED_TLS_KEY_FILE}' does not exist" + fi + if [[ -n "${MEMCACHED_TLS_CA_FILE}" && ! -f "${MEMCACHED_TLS_CA_FILE}" ]]; then + print_validation_error "TLS CA file '${MEMCACHED_TLS_CA_FILE}' does not exist" + fi + if [[ -n "${MEMCACHED_TLS_VERIFY_MODE}" ]] && ! [[ "${MEMCACHED_TLS_VERIFY_MODE}" =~ ^[0-3]$ ]]; then + print_validation_error "MEMCACHED_TLS_VERIFY_MODE must be 0 (None), 1 (Request), 2 (Require), or 3 (Once)" + fi + fi + [[ "${error_code}" -eq 0 ]] || exit "$error_code" } diff --git a/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached-env.sh b/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached-env.sh index 836e2b007408..9b0b96726dba 100644 --- a/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached-env.sh +++ b/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached-env.sh @@ -34,6 +34,11 @@ memcached_env_vars=( MEMCACHED_CACHE_SIZE MEMCACHED_MAX_CONNECTIONS MEMCACHED_THREADS + MEMCACHED_TLS_ENABLED + MEMCACHED_TLS_CERT_FILE + MEMCACHED_TLS_KEY_FILE + MEMCACHED_TLS_CA_FILE + MEMCACHED_TLS_VERIFY_MODE ) for env_var in "${memcached_env_vars[@]}"; do file_env_var="${env_var}_FILE" @@ -78,4 +83,11 @@ export MEMCACHED_CACHE_SIZE="${MEMCACHED_CACHE_SIZE:-}" export MEMCACHED_MAX_CONNECTIONS="${MEMCACHED_MAX_CONNECTIONS:-}" export MEMCACHED_THREADS="${MEMCACHED_THREADS:-}" +# TLS +export MEMCACHED_TLS_ENABLED="${MEMCACHED_TLS_ENABLED:-no}" +export MEMCACHED_TLS_CERT_FILE="${MEMCACHED_TLS_CERT_FILE:-}" +export MEMCACHED_TLS_KEY_FILE="${MEMCACHED_TLS_KEY_FILE:-}" +export MEMCACHED_TLS_CA_FILE="${MEMCACHED_TLS_CA_FILE:-}" +export MEMCACHED_TLS_VERIFY_MODE="${MEMCACHED_TLS_VERIFY_MODE:-0}" + # Custom environment variables may be defined below diff --git a/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached/run.sh b/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached/run.sh index 2f9f5804822c..75621427b33b 100755 --- a/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached/run.sh +++ b/bitnami/memcached/1/debian-12/rootfs/opt/bitnami/scripts/memcached/run.sh @@ -27,6 +27,14 @@ args=("-u" "$MEMCACHED_DAEMON_USER" "-p" "$MEMCACHED_PORT_NUMBER" "-v") [[ -n "$MEMCACHED_MAX_CONNECTIONS" ]] && args+=("-c" "$MEMCACHED_MAX_CONNECTIONS") [[ -n "$MEMCACHED_THREADS" ]] && args+=("-t" "$MEMCACHED_THREADS") [[ -n "$MEMCACHED_MAX_ITEM_SIZE" ]] && args+=("-I" "$MEMCACHED_MAX_ITEM_SIZE") +# TLS +if [[ "${MEMCACHED_TLS_ENABLED:-no}" == "yes" ]]; then + args+=("-Z") + [[ -n "$MEMCACHED_TLS_CERT_FILE" ]] && args+=("-o" "ssl_chain_cert=${MEMCACHED_TLS_CERT_FILE}") + [[ -n "$MEMCACHED_TLS_KEY_FILE" ]] && args+=("-o" "ssl_key=${MEMCACHED_TLS_KEY_FILE}") + [[ -n "$MEMCACHED_TLS_CA_FILE" ]] && args+=("-o" "ssl_ca_cert=${MEMCACHED_TLS_CA_FILE}") + [[ -n "$MEMCACHED_TLS_VERIFY_MODE" ]] && args+=("-o" "ssl_verify_mode=${MEMCACHED_TLS_VERIFY_MODE}") +fi # Extra flags read -r -a extra_flags <<<"$MEMCACHED_EXTRA_FLAGS" [[ "${#extra_flags[@]}" -gt 0 ]] && args+=("${extra_flags[@]}") diff --git a/bitnami/memcached/README.md b/bitnami/memcached/README.md index ce25ee9e5e3d..a979071ece54 100644 --- a/bitnami/memcached/README.md +++ b/bitnami/memcached/README.md @@ -68,18 +68,23 @@ The following tables list the main variables you can set. #### Customizable environment variables -| Name | Description | Default Value | -|-----------------------------|------------------------------------------------------------------------|---------------| -| `MEMCACHED_LISTEN_ADDRESS` | Host that the Memcached service will bind to. | `nil` | -| `MEMCACHED_PORT_NUMBER` | Port number used by Memcached. | `11211` | -| `MEMCACHED_USERNAME` | Memcached admin username. | `root` | -| `MEMCACHED_PASSWORD` | Password for the Memcached admin user. | `nil` | -| `MEMCACHED_MAX_ITEM_SIZE` | Memcached maximum item size. | `nil` | -| `MEMCACHED_EXTRA_FLAGS` | Extra flags to be used when running Memcached. | `nil` | -| `MEMCACHED_MAX_TIMEOUT` | Maximum timeout in seconds for Memcached to start or stop. | `5` | -| `MEMCACHED_CACHE_SIZE` | Memcached cache size in MB. | `nil` | -| `MEMCACHED_MAX_CONNECTIONS` | Maximum amount of concurrent connections that Memcached will tolerate. | `nil` | -| `MEMCACHED_THREADS` | Amount of process threads that Memcached will use. | `nil` | +| Name | Description | Default Value | +|-----------------------------|-----------------------------------------------------------------------------------|---------------| +| `MEMCACHED_LISTEN_ADDRESS` | Host that the Memcached service will bind to. | `nil` | +| `MEMCACHED_PORT_NUMBER` | Port number used by Memcached. | `11211` | +| `MEMCACHED_USERNAME` | Memcached admin username. | `root` | +| `MEMCACHED_PASSWORD` | Password for the Memcached admin user. | `nil` | +| `MEMCACHED_MAX_ITEM_SIZE` | Memcached maximum item size. | `nil` | +| `MEMCACHED_EXTRA_FLAGS` | Extra flags to be used when running Memcached. | `nil` | +| `MEMCACHED_MAX_TIMEOUT` | Maximum timeout in seconds for Memcached to start or stop. | `5` | +| `MEMCACHED_CACHE_SIZE` | Memcached cache size in MB. | `nil` | +| `MEMCACHED_MAX_CONNECTIONS` | Maximum amount of concurrent connections that Memcached will tolerate. | `nil` | +| `MEMCACHED_THREADS` | Amount of process threads that Memcached will use. | `nil` | +| `MEMCACHED_TLS_ENABLED` | Whether to enable TLS/SSL encryption. Valid values: yes, no. | `no` | +| `MEMCACHED_TLS_CERT_FILE` | Path to the TLS certificate chain file in PEM format. | `nil` | +| `MEMCACHED_TLS_KEY_FILE` | Path to the TLS private key file in PEM format. | `nil` | +| `MEMCACHED_TLS_CA_FILE` | Path to the CA certificate file used for client certificate verification. | `nil` | +| `MEMCACHED_TLS_VERIFY_MODE` | Peer certificate verification mode: 0 (None), 1 (Request), 2 (Require), 3 (Once). | `0` | #### Read-only environment variables