mirror of
https://github.com/bitnami/containers.git
synced 2026-10-19 11:08:09 +02:00
Deprecate nginx-ingress-controller (#92562)
Signed-off-by: Carlos Rodríguez Hernández <carlos.rodriguez-hernandez@broadcom.com> ai-assisted=no
This commit is contained in:
@@ -1,10 +0,0 @@
|
||||
# ⚠️ Important Notice: Upcoming changes to the Bitnami Catalog
|
||||
|
||||
Beginning August 28th, 2025, Bitnami will evolve its public catalog to offer a curated set of hardened, security-focused images under the new [Bitnami Secure Images initiative](https://news.broadcom.com/app-dev/broadcom-introduces-bitnami-secure-images-for-production-ready-containerized-applications). As part of this transition:
|
||||
|
||||
- Granting community users access for the first time to security-optimized versions of popular container images.
|
||||
- Bitnami will begin deprecating support for non-hardened, Debian-based software images in its free tier and will gradually remove non-latest tags from the public catalog. As a result, community users will have access to a reduced number of hardened images. These images are published only under the “latest” tag and are intended for development purposes
|
||||
- Starting August 28th, over two weeks, all existing container images, including older or versioned tags (e.g., 2.50.0, 10.6), will be migrated from the public catalog (docker.io/bitnami) to the “Bitnami Legacy” repository (docker.io/bitnamilegacy), where they will no longer receive updates.
|
||||
- For production workloads and long-term support, users are encouraged to adopt Bitnami Secure Images, which include hardened containers, smaller attack surfaces, CVE transparency (via VEX/KEV), SBOMs, and enterprise support.
|
||||
|
||||
These changes aim to improve the security posture of all Bitnami users by promoting best practices for software supply chain integrity and up-to-date deployments. For more details, visit the [Bitnami Secure Images announcement](https://github.com/bitnami/containers/issues/83267).
|
||||
@@ -1,76 +0,0 @@
|
||||
# Copyright Broadcom, Inc. All Rights Reserved.
|
||||
# SPDX-License-Identifier: APACHE-2.0
|
||||
|
||||
FROM docker.io/bitnami/minideb:bookworm
|
||||
|
||||
ARG DOWNLOADS_URL="downloads.bitnami.com/files/stacksmith"
|
||||
ARG TARGETARCH
|
||||
|
||||
LABEL org.opencontainers.image.base.name="docker.io/bitnami/minideb:bookworm" \
|
||||
org.opencontainers.image.created="2026-04-08T07:03:55Z" \
|
||||
org.opencontainers.image.description="Application packaged by Broadcom, Inc." \
|
||||
org.opencontainers.image.documentation="https://github.com/bitnami/containers/tree/main/bitnami/nginx-ingress-controller/README.md" \
|
||||
org.opencontainers.image.source="https://github.com/bitnami/containers/tree/main/bitnami/nginx-ingress-controller" \
|
||||
org.opencontainers.image.title="nginx-ingress-controller" \
|
||||
org.opencontainers.image.vendor="Broadcom, Inc." \
|
||||
org.opencontainers.image.version="1.15.1"
|
||||
|
||||
ENV HOME="/" \
|
||||
OS_ARCH="${TARGETARCH:-amd64}" \
|
||||
OS_FLAVOUR="debian-12" \
|
||||
OS_NAME="linux"
|
||||
|
||||
COPY prebuildfs /
|
||||
SHELL ["/bin/bash", "-o", "errexit", "-o", "nounset", "-o", "pipefail", "-c"]
|
||||
# Install required system packages and dependencies
|
||||
RUN install_packages ca-certificates curl libabsl20220623 libbrotli1 libc-ares2 libcap2-bin libcom-err2 libcrypt1 libcurl4 libffi8 libgcc-s1 libgmp10 libgnutls30 libgrpc++1.51 libgrpc29 libgssapi-krb5-2 libhogweed6 libicu72 libidn2-0 libk5crypto3 libkeyutils1 libkrb5-3 libkrb5support0 libldap-2.5-0 liblzma5 libnettle8 libnghttp2-14 libp11-kit0 libpcre3 libprotobuf32 libpsl5 libre2-9 librtmp1 libsasl2-2 libssh2-1 libssl3 libstdc++6 libtasn1-6 libunistring2 libxml2 libyajl2 libzstd1 procps zlib1g
|
||||
RUN --mount=type=secret,id=downloads_url,env=SECRET_DOWNLOADS_URL \
|
||||
DOWNLOADS_URL=${SECRET_DOWNLOADS_URL:-${DOWNLOADS_URL}} ; \
|
||||
mkdir -p /tmp/bitnami/pkg/cache/ ; cd /tmp/bitnami/pkg/cache/ || exit 1 ; \
|
||||
COMPONENTS=( \
|
||||
"nginx-ingress-controller-1.15.1-1-linux-${OS_ARCH}-debian-12" \
|
||||
) ; \
|
||||
for COMPONENT in "${COMPONENTS[@]}"; do \
|
||||
if [ ! -f "${COMPONENT}.tar.gz" ]; then \
|
||||
curl -SsLf "https://${DOWNLOADS_URL}/${COMPONENT}.tar.gz" -O ; \
|
||||
curl -SsLf "https://${DOWNLOADS_URL}/${COMPONENT}.tar.gz.sha256" -O ; \
|
||||
fi ; \
|
||||
sha256sum -c "${COMPONENT}.tar.gz.sha256" ; \
|
||||
tar -zxf "${COMPONENT}.tar.gz" -C /opt/bitnami --strip-components=2 --no-same-owner ; \
|
||||
rm -rf "${COMPONENT}".tar.gz{,.sha256} ; \
|
||||
done
|
||||
RUN apt-get update && apt-get upgrade -y && \
|
||||
apt-get clean && rm -rf /var/lib/apt/lists /var/cache/apt/archives
|
||||
RUN chmod g+rwX /opt/bitnami
|
||||
RUN find / -perm /6000 -type f -exec chmod a-s {} \; || true
|
||||
|
||||
RUN ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx && \
|
||||
ln -s /nginx-ingress-controller /usr/bin/nginx-ingress-controller
|
||||
RUN cd /opt/bitnami/nginx-ingress-controller && \
|
||||
mkdir -p rootfs/etc/ingress-controller/ssl rootfs/etc/ingress-controller/auth rootfs/var/log/nginx rootfs/tmp/nginx && \
|
||||
if grep -q www-data /etc/passwd; then chown -R www-data rootfs/etc rootfs/var rootfs/tmp; fi && \
|
||||
chgrp -R root rootfs/etc rootfs/var rootfs/tmp && \
|
||||
chmod -R g+rwX rootfs/etc rootfs/var rootfs/tmp && \
|
||||
cp -rp rootfs/. / && \
|
||||
rm -rf rootfs && \
|
||||
ldconfig /usr/local/lib
|
||||
RUN setcap cap_net_bind_service=+ep /usr/local/nginx/sbin/nginx && \
|
||||
setcap -v cap_net_bind_service=+ep /usr/local/nginx/sbin/nginx
|
||||
RUN setcap cap_net_bind_service=+ep /nginx-ingress-controller && \
|
||||
setcap -v cap_net_bind_service=+ep /nginx-ingress-controller
|
||||
RUN mkdir -p /etc/ingress-controller/auth /etc/ingress-controller/ssl
|
||||
RUN ln -sf /dev/stdout /var/log/nginx/access.log && \
|
||||
ln -sf /dev/stderr /var/log/nginx/error.log
|
||||
ENV APP_VERSION="1.15.1" \
|
||||
BITNAMI_APP_NAME="nginx-ingress-controller" \
|
||||
IMAGE_REVISION="1" \
|
||||
LD_LIBRARY_PATH="/lib:/modules_mount/etc/nginx/modules/otel:/usr/lib:/usr/local/lib:$LD_LIBRARY_PATH" \
|
||||
LUA_CPATH="/usr/local/lib/lua/?/?.so;/usr/local/lib/lua/?.so;;" \
|
||||
LUA_PATH="/usr/local/share/luajit-2.1.0-beta3/?.lua;/usr/local/share/lua/5.1/?.lua;/usr/local/lib/lua/?.lua;;" \
|
||||
PATH="/usr/local/luajit/bin:/usr/local/nginx/bin:/usr/local/nginx/sbin:/opt/bitnami/nginx-ingress-controller/bin:/opt/bitnami/nginx/sbin:$PATH"
|
||||
|
||||
EXPOSE 80 443
|
||||
|
||||
WORKDIR /etc/nginx
|
||||
USER 1001
|
||||
ENTRYPOINT [ "/nginx-ingress-controller" ]
|
||||
-2
@@ -1,2 +0,0 @@
|
||||
Bitnami containers ship with software bundles. You can find the licenses under:
|
||||
/opt/bitnami/[name-of-bundle]/licenses/[bundle-version].txt
|
||||
@@ -1,27 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright Broadcom, Inc. All Rights Reserved.
|
||||
# SPDX-License-Identifier: APACHE-2.0
|
||||
set -eu
|
||||
|
||||
n=0
|
||||
max=2
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
until [ $n -gt $max ]; do
|
||||
set +e
|
||||
(
|
||||
apt-get update -qq &&
|
||||
apt-get install -y --no-install-recommends "$@"
|
||||
)
|
||||
CODE=$?
|
||||
set -e
|
||||
if [ $CODE -eq 0 ]; then
|
||||
break
|
||||
fi
|
||||
if [ $n -eq $max ]; then
|
||||
exit $CODE
|
||||
fi
|
||||
echo "apt failed, retrying"
|
||||
n=$(($n + 1))
|
||||
done
|
||||
apt-get clean && rm -rf /var/lib/apt/lists /var/cache/apt/archives
|
||||
@@ -1,24 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright Broadcom, Inc. All Rights Reserved.
|
||||
# SPDX-License-Identifier: APACHE-2.0
|
||||
set -u
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
>&2 echo "No arguments provided"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
script=$1
|
||||
exit_code="${2:-96}"
|
||||
fail_if_not_present="${3:-n}"
|
||||
|
||||
if test -f "$script"; then
|
||||
sh $script
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
exit $((exit_code))
|
||||
fi
|
||||
elif [ "$fail_if_not_present" = "y" ]; then
|
||||
>&2 echo "script not found: $script"
|
||||
exit 127
|
||||
fi
|
||||
-26
@@ -1,26 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright Broadcom, Inc. All Rights Reserved.
|
||||
# SPDX-License-Identifier: APACHE-2.0
|
||||
set -eu
|
||||
|
||||
n=0
|
||||
max=2
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
until [ $n -gt $max ]; do
|
||||
set +e
|
||||
(
|
||||
apt-get autoremove --purge -y "$@"
|
||||
)
|
||||
CODE=$?
|
||||
set -e
|
||||
if [ $CODE -eq 0 ]; then
|
||||
break
|
||||
fi
|
||||
if [ $n -eq $max ]; then
|
||||
exit $CODE
|
||||
fi
|
||||
echo "apt failed, retrying"
|
||||
n=$(($n + 1))
|
||||
done
|
||||
apt-get clean && rm -rf /var/lib/apt/lists /var/cache/apt/archives
|
||||
@@ -1,71 +0,0 @@
|
||||
# Bitnami Secure Image for NGINX Ingress Controller
|
||||
|
||||
> NGINX Ingress Controller is an Ingress controller that manages external access to HTTP services in a Kubernetes cluster using NGINX.
|
||||
|
||||
[Overview of NGINX Ingress Controller](https://kubernetes.github.io/ingress-nginx/)
|
||||
Trademarks: This software listing is packaged by Bitnami. The respective trademarks mentioned in the offering are owned by the respective companies, and use of them does not imply any affiliation or endorsement.
|
||||
|
||||
## TL;DR
|
||||
|
||||
Deploy NGINX Ingress Controller for Kubernetes on your [Kubernetes cluster](https://kubernetes.io/docs/concepts/services-networking/ingress/).
|
||||
|
||||
```console
|
||||
docker run --name nginx-ingress-controller bitnami/nginx-ingress-controller:latest
|
||||
```
|
||||
|
||||
## Why use Bitnami Secure Images?
|
||||
|
||||
Those are hardened, minimal CVE images built and maintained by Bitnami. Bitnami Secure Images are based on the cloud-optimized, security-hardened enterprise [OS Photon Linux](https://vmware.github.io/photon/). Why choose BSI images?
|
||||
|
||||
- Hardened secure images of popular open source software with Near-Zero Vulnerabilities
|
||||
- Vulnerability Triage & Prioritization with VEX Statements, KEV and EPSS Scores
|
||||
- Compliance focus with FIPS, STIG, and air-gap options, including secure bill of materials (SBOM)
|
||||
- Software supply chain provenance attestation through in-toto
|
||||
- First class support for the internet’s favorite Helm charts
|
||||
|
||||
Each image comes with valuable security metadata. You can view the metadata in [our public catalog here](https://app-catalog.vmware.com/bitnami/apps). Note: Some data is only available with [commercial subscriptions to BSI](https://bitnami.com/).
|
||||
|
||||

|
||||

|
||||
|
||||
If you are looking for our previous generation of images based on Debian Linux, please see the [Bitnami Legacy registry](https://hub.docker.com/u/bitnamilegacy).
|
||||
|
||||
## How to deploy NGINX Ingress Controller in Kubernetes?
|
||||
|
||||
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 NGINX Ingress Controller Chart GitHub repository](https://github.com/bitnami/charts/tree/master/bitnami/nginx-ingress-controller).
|
||||
|
||||
## Supported tags and respective `Dockerfile` links
|
||||
|
||||
Learn more about the Bitnami tagging policy and the difference between rolling tags and immutable tags [in our documentation page](https://techdocs.broadcom.com/us/en/vmware-tanzu/application-catalog/tanzu-application-catalog/services/tac-doc/apps-tutorials-understand-rolling-tags-containers-index.html).
|
||||
|
||||
## Configuration
|
||||
|
||||
For further documentation, please check [here](https://github.com/kubernetes/ingress-nginx).
|
||||
|
||||
### FIPS configuration in Bitnami Secure Images
|
||||
|
||||
The Bitnami NGINX Ingress Controller Docker image from the [Bitnami Secure Images](https://go-vmware.broadcom.com/contact-us) catalog includes extra features and settings to configure the container with FIPS capabilities. You can configure the next environment variables:
|
||||
|
||||
- `OPENSSL_FIPS`: whether OpenSSL runs in FIPS mode or not. `yes` (default), `no`.
|
||||
|
||||
## Notable Changes
|
||||
|
||||
### Starting January 16, 2024
|
||||
|
||||
- The `docker-compose.yaml` file has been removed, as it was solely intended for internal testing purposes.
|
||||
|
||||
## License
|
||||
|
||||
Copyright © 2026 Broadcom. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
<http://www.apache.org/licenses/LICENSE-2.0>
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
Reference in New Issue
Block a user