Namespace
nginxinc
Image / Tag
nginx-unprivileged:mainline-trixie-perl
Content Digest
sha256:94c14112e43846d1a4e7f663afac39c662bcd7edd5c75e6e99a032beaa984f20
Details
Created

2026-03-30 04:08:51 UTC

Size

68.9 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-03-30T04:05:47.437Z
  • org.opencontainers.image.description
    Unprivileged NGINX Dockerfiles
  • org.opencontainers.image.licenses
    Apache-2.0
  • org.opencontainers.image.revision
    61141700fbe3bb03ee7379fd0a5cba5c9c5fc885
  • org.opencontainers.image.source
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.title
    docker-nginx-unprivileged
  • org.opencontainers.image.url
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.version
    1.29.5-perl

Environment
DYNPKG_RELEASE

1~trixie

NGINX_VERSION

1.29.5

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PKG_RELEASE

1~trixie


Layers

[#000] sha256:2c0c3f3238f3d4cecd93e4dee6eda788943ef955de61c3ad4ff659da1f43ba60 - 43.31% (29.8 MB)

[#001] sha256:1caf539f23e0bdc3dc9b80fa7ac09a98eb8a9cd7d8277369ee402f8a4afe2935 - 39.82% (27.4 MB)

[#002] sha256:981f80c6dc1082e70398fa320bd2e4d8418965826a95b7ccc3f5d118935900c7 - 0.01% (4.08 KB)

[#003] sha256:66b0e8ef66a3b6ba0e5eff20206a25333e0ecfdcd9fd647a1d5f6b3de0e0047e - 0.0% (628 Bytes)

[#004] sha256:7c24a0f5efd32e0cb1875d63b08257d715a6a688e36173913c5f4979964e66a2 - 0.0% (958 Bytes)

[#005] sha256:43d745c869e30d342703a15281e9d90ea5c832f56f05693add41ba793320f220 - 0.0% (406 Bytes)

[#006] sha256:34c2432412bdc4d6132c2be3c8976d8126a248adaed00bf60430ee9c8db402fe - 0.0% (1.18 KB)

[#007] sha256:378243910c603a181825882005e80a0cc5d5d231076200d19b8070c265a68d82 - 0.0% (1.37 KB)

[#008] sha256:9993006202390a263198d9bca6d4f91a16d47688ff73d2b0cf9000803db39632 - 16.86% (11.6 MB)


History
2026-03-16 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'i386' out/ 'trixie' '@1773619200'

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 00:34:20 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x && groupadd --system --gid $GID nginx || true && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid $UID nginx || true && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y gnupg1 ca-certificates && NGINX_GPGKEYS="573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 8540A6F18833A80E9C1653A42FD21310B49F6B46 9E9BE90EACBCDE69FE9B204CBCDCD8A38D88A2B3"; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; export GNUPGHOME="$(mktemp -d)"; found=''; for NGINX_GPGKEY in $NGINX_GPGKEYS; do for server in hkp://keyserver.ubuntu.com:80 pgp.mit.edu ; do echo "Fetching GPG key $NGINX_GPGKEY from $server"; gpg1 --batch --keyserver "$server" --keyserver-options timeout=10 --recv-keys "$NGINX_GPGKEY" && found=yes && break; done; test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; done; gpg1 --batch --export $NGINX_GPGKEYS > "$NGINX_GPGKEY_PATH" ; rm -rf "$GNUPGHOME"; apt-get remove --purge --auto-remove -y gnupg1 && rm -rf /var/lib/apt/lists/* && dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in base module-geoip module-image-filter module-njs module-xslt; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make base module-geoip module-image-filter module-njs module-xslt ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && sed -i 's,PIDFILE=${PIDFILE:-/run/nginx.pid},PIDFILE=${PIDFILE:-/tmp/nginx.pid},' /etc/init.d/nginx && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

USER 101

2026-03-30 00:34:21 UTC (buildkit.dockerfile.v0)

CMD ["nginx" "-g" "daemon off;"]

2026-03-30 04:08:51 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:08:51 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:08:51 UTC (buildkit.dockerfile.v0)

USER root

2026-03-30 04:08:51 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-perl=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in module-perl; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make module-perl ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi # buildkit

2026-03-30 04:08:51 UTC (buildkit.dockerfile.v0)

USER 101

Details
Created

2026-03-30 04:06:05 UTC

Size

68.7 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-03-30T04:05:47.437Z
  • org.opencontainers.image.description
    Unprivileged NGINX Dockerfiles
  • org.opencontainers.image.licenses
    Apache-2.0
  • org.opencontainers.image.revision
    61141700fbe3bb03ee7379fd0a5cba5c9c5fc885
  • org.opencontainers.image.source
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.title
    docker-nginx-unprivileged
  • org.opencontainers.image.url
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.version
    1.29.5-perl

Environment
DYNPKG_RELEASE

1~trixie

NGINX_VERSION

1.29.5

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PKG_RELEASE

1~trixie


Layers

[#000] sha256:ec781dee3f4719c2ca0dd9e73cb1d4ed834ed1a406495eb6e44b6dfaad5d1f8f - 41.36% (28.4 MB)

[#001] sha256:e089b810e68f229565c8216be282cb37b0ba27c4ff6bb657dd387d4b2340a90b - 41.73% (28.7 MB)

[#002] sha256:fd3bd7c850a086ca395b8055a1bbd90aab9d3b20790297e0ef066ca012b86a10 - 0.01% (4.08 KB)

[#003] sha256:66b0e8ef66a3b6ba0e5eff20206a25333e0ecfdcd9fd647a1d5f6b3de0e0047e - 0.0% (628 Bytes)

[#004] sha256:8f374829314de5c8ee66856c3f12c8d77d22f278d63bc4b657284dc6d4c4858c - 0.0% (958 Bytes)

[#005] sha256:276d08efb5de26e49c666e3d36a8118f390f40bffdfc984789ee877562322eea - 0.0% (405 Bytes)

[#006] sha256:0c7e02ecd84572a69fc6053537ba713d9d2b5b9035c529b438221538d28c5719 - 0.0% (1.18 KB)

[#007] sha256:d60259cca52b12894e8730aad2ef8b8dc054760a1fa9e95fcf581db10fe7f5f1 - 0.0% (1.37 KB)

[#008] sha256:4e73072ba1c8efd066d27e622f0a1bfa68ede28065c79fe58ad4c5760d39558c - 16.89% (11.6 MB)


History
2026-03-16 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'amd64' out/ 'trixie' '@1773619200'

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x && groupadd --system --gid $GID nginx || true && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid $UID nginx || true && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y gnupg1 ca-certificates && NGINX_GPGKEYS="573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 8540A6F18833A80E9C1653A42FD21310B49F6B46 9E9BE90EACBCDE69FE9B204CBCDCD8A38D88A2B3"; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; export GNUPGHOME="$(mktemp -d)"; found=''; for NGINX_GPGKEY in $NGINX_GPGKEYS; do for server in hkp://keyserver.ubuntu.com:80 pgp.mit.edu ; do echo "Fetching GPG key $NGINX_GPGKEY from $server"; gpg1 --batch --keyserver "$server" --keyserver-options timeout=10 --recv-keys "$NGINX_GPGKEY" && found=yes && break; done; test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; done; gpg1 --batch --export $NGINX_GPGKEYS > "$NGINX_GPGKEY_PATH" ; rm -rf "$GNUPGHOME"; apt-get remove --purge --auto-remove -y gnupg1 && rm -rf /var/lib/apt/lists/* && dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in base module-geoip module-image-filter module-njs module-xslt; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make base module-geoip module-image-filter module-njs module-xslt ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && sed -i 's,PIDFILE=${PIDFILE:-/run/nginx.pid},PIDFILE=${PIDFILE:-/tmp/nginx.pid},' /etc/init.d/nginx && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

USER 101

2026-03-30 00:18:04 UTC (buildkit.dockerfile.v0)

CMD ["nginx" "-g" "daemon off;"]

2026-03-30 04:06:05 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:06:05 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:06:05 UTC (buildkit.dockerfile.v0)

USER root

2026-03-30 04:06:05 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-perl=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in module-perl; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make module-perl ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi # buildkit

2026-03-30 04:06:05 UTC (buildkit.dockerfile.v0)

USER 101

Details
Created

2026-03-30 04:28:07 UTC

Size

58.6 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-03-30T04:05:47.437Z
  • org.opencontainers.image.description
    Unprivileged NGINX Dockerfiles
  • org.opencontainers.image.licenses
    Apache-2.0
  • org.opencontainers.image.revision
    61141700fbe3bb03ee7379fd0a5cba5c9c5fc885
  • org.opencontainers.image.source
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.title
    docker-nginx-unprivileged
  • org.opencontainers.image.url
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.version
    1.29.5-perl

Environment
DYNPKG_RELEASE

1~trixie

NGINX_VERSION

1.29.5

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PKG_RELEASE

1~trixie


Layers

[#000] sha256:7d73604d2a042e7beeb809f68c76f5be3576747809bfaa49747f334227d8d250 - 42.65% (25 MB)

[#001] sha256:bcc6c92020bf24528c2a8cbba92be1d12f69c46d4ed877210f60fd6bbef73a7f - 38.21% (22.4 MB)

[#002] sha256:1474bfbc5ec554fe6e72903f25683308f2e5ab152fa2bdc20014cb86da632020 - 0.01% (4.08 KB)

[#003] sha256:66b0e8ef66a3b6ba0e5eff20206a25333e0ecfdcd9fd647a1d5f6b3de0e0047e - 0.0% (628 Bytes)

[#004] sha256:bb41b75f068ca2191890a80c175ff583bd8b8e8d7ad69ed9de0de31672eee083 - 0.0% (960 Bytes)

[#005] sha256:24f1a255a5689c23ce306d707f16abe61c77eb81719c9dab74bcbf2a5bcaa4fc - 0.0% (407 Bytes)

[#006] sha256:09be5c375b9d553a5cf99454bf29c845b7fb98b2d485d9cdd9befcbbdd31fbb1 - 0.0% (1.18 KB)

[#007] sha256:4ab890f8a9bf3362a5830b6686c18213f657a1c54c56869f42f5a1c1616c654e - 0.0% (1.37 KB)

[#008] sha256:d2d042efceac1f724c5d493ce41d5e8b5f817962e397b54359563e69b0a68386 - 19.13% (11.2 MB)


History
2026-03-16 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'armhf' out/ 'trixie' '@1773619200'

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x && groupadd --system --gid $GID nginx || true && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid $UID nginx || true && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y gnupg1 ca-certificates && NGINX_GPGKEYS="573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 8540A6F18833A80E9C1653A42FD21310B49F6B46 9E9BE90EACBCDE69FE9B204CBCDCD8A38D88A2B3"; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; export GNUPGHOME="$(mktemp -d)"; found=''; for NGINX_GPGKEY in $NGINX_GPGKEYS; do for server in hkp://keyserver.ubuntu.com:80 pgp.mit.edu ; do echo "Fetching GPG key $NGINX_GPGKEY from $server"; gpg1 --batch --keyserver "$server" --keyserver-options timeout=10 --recv-keys "$NGINX_GPGKEY" && found=yes && break; done; test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; done; gpg1 --batch --export $NGINX_GPGKEYS > "$NGINX_GPGKEY_PATH" ; rm -rf "$GNUPGHOME"; apt-get remove --purge --auto-remove -y gnupg1 && rm -rf /var/lib/apt/lists/* && dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in base module-geoip module-image-filter module-njs module-xslt; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make base module-geoip module-image-filter module-njs module-xslt ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && sed -i 's,PIDFILE=${PIDFILE:-/run/nginx.pid},PIDFILE=${PIDFILE:-/tmp/nginx.pid},' /etc/init.d/nginx && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit

2026-03-30 03:54:04 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

USER 101

2026-03-30 03:54:05 UTC (buildkit.dockerfile.v0)

CMD ["nginx" "-g" "daemon off;"]

2026-03-30 04:28:07 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:28:07 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:28:07 UTC (buildkit.dockerfile.v0)

USER root

2026-03-30 04:28:07 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-perl=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in module-perl; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make module-perl ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi # buildkit

2026-03-30 04:28:07 UTC (buildkit.dockerfile.v0)

USER 101

Details
Created

2026-03-30 04:07:59 UTC

Size

67.2 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-03-30T04:05:47.437Z
  • org.opencontainers.image.description
    Unprivileged NGINX Dockerfiles
  • org.opencontainers.image.licenses
    Apache-2.0
  • org.opencontainers.image.revision
    61141700fbe3bb03ee7379fd0a5cba5c9c5fc885
  • org.opencontainers.image.source
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.title
    docker-nginx-unprivileged
  • org.opencontainers.image.url
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.version
    1.29.5-perl

Environment
DYNPKG_RELEASE

1~trixie

NGINX_VERSION

1.29.5

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PKG_RELEASE

1~trixie


Layers

[#000] sha256:f4badedbec24858ef2dc51256f6418328e305e9c3c5a5e093581f83425618bd5 - 42.78% (28.7 MB)

[#001] sha256:feed815cc89520b76ef060bbb34f0575620aa75b139dfbe8cd472a5ae0df7b4c - 40.02% (26.9 MB)

[#002] sha256:f905ba0cc92370f5bef7c78c4bb77c8eca0fd3e3f399ab53aeffeabd171be7fe - 0.01% (4.09 KB)

[#003] sha256:66b0e8ef66a3b6ba0e5eff20206a25333e0ecfdcd9fd647a1d5f6b3de0e0047e - 0.0% (628 Bytes)

[#004] sha256:2e0f6161285fe6378502f88e290eb96a8199989b0cc5c39004f0f569d790d2b7 - 0.0% (954 Bytes)

[#005] sha256:ca2fd112b16f9f8af38edbea9499132a5d0ce98bfff7d3a498a5d7ced1f9d61a - 0.0% (403 Bytes)

[#006] sha256:ffbe21ac75dc9f76089401921b6424aea06fad510842b82ef4b2f3eb7587f07b - 0.0% (1.17 KB)

[#007] sha256:bfdd4e6d04d2351a0a414d7f0119f868512c05ca4995b59d614384d4f719dcdb - 0.0% (1.36 KB)

[#008] sha256:681824bc0bc71cb30f153aa9b28e9433922b1cdec4950abe9e6b7fb4cbf590e6 - 17.18% (11.5 MB)


History
2026-03-16 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'arm64' out/ 'trixie' '@1773619200'

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 00:26:53 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x && groupadd --system --gid $GID nginx || true && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid $UID nginx || true && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y gnupg1 ca-certificates && NGINX_GPGKEYS="573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 8540A6F18833A80E9C1653A42FD21310B49F6B46 9E9BE90EACBCDE69FE9B204CBCDCD8A38D88A2B3"; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; export GNUPGHOME="$(mktemp -d)"; found=''; for NGINX_GPGKEY in $NGINX_GPGKEYS; do for server in hkp://keyserver.ubuntu.com:80 pgp.mit.edu ; do echo "Fetching GPG key $NGINX_GPGKEY from $server"; gpg1 --batch --keyserver "$server" --keyserver-options timeout=10 --recv-keys "$NGINX_GPGKEY" && found=yes && break; done; test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; done; gpg1 --batch --export $NGINX_GPGKEYS > "$NGINX_GPGKEY_PATH" ; rm -rf "$GNUPGHOME"; apt-get remove --purge --auto-remove -y gnupg1 && rm -rf /var/lib/apt/lists/* && dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in base module-geoip module-image-filter module-njs module-xslt; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make base module-geoip module-image-filter module-njs module-xslt ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && sed -i 's,PIDFILE=${PIDFILE:-/run/nginx.pid},PIDFILE=${PIDFILE:-/tmp/nginx.pid},' /etc/init.d/nginx && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

USER 101

2026-03-30 00:26:54 UTC (buildkit.dockerfile.v0)

CMD ["nginx" "-g" "daemon off;"]

2026-03-30 04:07:59 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:07:59 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:07:59 UTC (buildkit.dockerfile.v0)

USER root

2026-03-30 04:07:59 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-perl=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in module-perl; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make module-perl ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi # buildkit

2026-03-30 04:07:59 UTC (buildkit.dockerfile.v0)

USER 101

Details
Created

2026-03-30 04:29:09 UTC

Size

73.2 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-03-30T04:05:47.437Z
  • org.opencontainers.image.description
    Unprivileged NGINX Dockerfiles
  • org.opencontainers.image.licenses
    Apache-2.0
  • org.opencontainers.image.revision
    61141700fbe3bb03ee7379fd0a5cba5c9c5fc885
  • org.opencontainers.image.source
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.title
    docker-nginx-unprivileged
  • org.opencontainers.image.url
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.version
    1.29.5-perl

Environment
DYNPKG_RELEASE

1~trixie

NGINX_VERSION

1.29.5

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PKG_RELEASE

1~trixie


Layers

[#000] sha256:f078139432e0b368e27241df524f6ef0ed0148b217d7495670dc297af77699fb - 43.74% (32 MB)

[#001] sha256:e60754376d87e80a880420b61beea6ff26ac46bbe69d47c736a744d0d1e867ae - 39.46% (28.9 MB)

[#002] sha256:bcb5bca4b5b1a40728ec3f82f09c78cb072c6bbea98b9621b57563d7f007feb9 - 0.01% (4.08 KB)

[#003] sha256:66b0e8ef66a3b6ba0e5eff20206a25333e0ecfdcd9fd647a1d5f6b3de0e0047e - 0.0% (628 Bytes)

[#004] sha256:d27fe09eef8957be4d7a0f5df646500acfca083245ec92c1257985bbae72cc77 - 0.0% (959 Bytes)

[#005] sha256:817406074b492132e8827a8e1b140e380d8cc01d3454cddae4ed11b5a8473582 - 0.0% (407 Bytes)

[#006] sha256:4d5c58d713082dba0bfbdb2d075b0236404ad33864f992e1b659720c4a7ba967 - 0.0% (1.18 KB)

[#007] sha256:fd1b15d6534d14b77438261927e2e2663633cb4e8dfa0d24e4112253c94053c7 - 0.0% (1.37 KB)

[#008] sha256:445dd05581424a4a47c208f321a89febcb0c640ced2e2f47bcdfdd3c18117dab - 16.79% (12.3 MB)


History
2026-03-16 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'ppc64el' out/ 'trixie' '@1773619200'

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 03:55:49 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x && groupadd --system --gid $GID nginx || true && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid $UID nginx || true && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y gnupg1 ca-certificates && NGINX_GPGKEYS="573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 8540A6F18833A80E9C1653A42FD21310B49F6B46 9E9BE90EACBCDE69FE9B204CBCDCD8A38D88A2B3"; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; export GNUPGHOME="$(mktemp -d)"; found=''; for NGINX_GPGKEY in $NGINX_GPGKEYS; do for server in hkp://keyserver.ubuntu.com:80 pgp.mit.edu ; do echo "Fetching GPG key $NGINX_GPGKEY from $server"; gpg1 --batch --keyserver "$server" --keyserver-options timeout=10 --recv-keys "$NGINX_GPGKEY" && found=yes && break; done; test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; done; gpg1 --batch --export $NGINX_GPGKEYS > "$NGINX_GPGKEY_PATH" ; rm -rf "$GNUPGHOME"; apt-get remove --purge --auto-remove -y gnupg1 && rm -rf /var/lib/apt/lists/* && dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in base module-geoip module-image-filter module-njs module-xslt; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make base module-geoip module-image-filter module-njs module-xslt ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && sed -i 's,PIDFILE=${PIDFILE:-/run/nginx.pid},PIDFILE=${PIDFILE:-/tmp/nginx.pid},' /etc/init.d/nginx && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

USER 101

2026-03-30 03:55:50 UTC (buildkit.dockerfile.v0)

CMD ["nginx" "-g" "daemon off;"]

2026-03-30 04:29:09 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:29:09 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:29:09 UTC (buildkit.dockerfile.v0)

USER root

2026-03-30 04:29:09 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-perl=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in module-perl; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make module-perl ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi # buildkit

2026-03-30 04:29:09 UTC (buildkit.dockerfile.v0)

USER 101

Details
Created

2026-03-30 04:28:24 UTC

Size

63.8 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-03-30T04:05:47.437Z
  • org.opencontainers.image.description
    Unprivileged NGINX Dockerfiles
  • org.opencontainers.image.licenses
    Apache-2.0
  • org.opencontainers.image.revision
    61141700fbe3bb03ee7379fd0a5cba5c9c5fc885
  • org.opencontainers.image.source
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.title
    docker-nginx-unprivileged
  • org.opencontainers.image.url
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.version
    1.29.5-perl

Environment
DYNPKG_RELEASE

1~trixie

NGINX_VERSION

1.29.5

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PKG_RELEASE

1~trixie


Layers

[#000] sha256:0b5164900a4737bd8c71921f9d6095f2a9499d5081755c56a4aa46d8f37e9865 - 42.27% (27 MB)

[#001] sha256:4e3d5acdf8604c7718492c61b4ea1b3f7ef2660c0b78b1232e5897f14d48c4fb - 39.61% (25.3 MB)

[#002] sha256:3938ada99d4dd0c6b2bd28e8c1681ff43b6ad59c67766301249c6ea5e80230c0 - 0.01% (4.08 KB)

[#003] sha256:66b0e8ef66a3b6ba0e5eff20206a25333e0ecfdcd9fd647a1d5f6b3de0e0047e - 0.0% (628 Bytes)

[#004] sha256:4f5ef252b6ee1cf670fa90173cdca9ba200c1af7789c9469dcda86e16c6a28cb - 0.0% (958 Bytes)

[#005] sha256:694af72b7fc8f640b7bf278b0d4c1597fe720de0603233484cb0c716816eb00c - 0.0% (405 Bytes)

[#006] sha256:cf55873c0706944c9da5a92d404bc9899babf4e96f8aca854926f58bbe576505 - 0.0% (1.18 KB)

[#007] sha256:bf283d4404df2cfdc1cae5362ad8f96e2cc6b3cf217e96ca9f4a84cddd4b752e - 0.0% (1.37 KB)

[#008] sha256:19d00de7dd3fb5a8bbfbfb1eee9b18dbaecef3a8e3fbe257c9d4d0ff2ad10dfc - 18.1% (11.5 MB)


History
2026-03-16 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'riscv64' out/ 'trixie' '@1773619200'

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x && groupadd --system --gid $GID nginx || true && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid $UID nginx || true && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y gnupg1 ca-certificates && NGINX_GPGKEYS="573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 8540A6F18833A80E9C1653A42FD21310B49F6B46 9E9BE90EACBCDE69FE9B204CBCDCD8A38D88A2B3"; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; export GNUPGHOME="$(mktemp -d)"; found=''; for NGINX_GPGKEY in $NGINX_GPGKEYS; do for server in hkp://keyserver.ubuntu.com:80 pgp.mit.edu ; do echo "Fetching GPG key $NGINX_GPGKEY from $server"; gpg1 --batch --keyserver "$server" --keyserver-options timeout=10 --recv-keys "$NGINX_GPGKEY" && found=yes && break; done; test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; done; gpg1 --batch --export $NGINX_GPGKEYS > "$NGINX_GPGKEY_PATH" ; rm -rf "$GNUPGHOME"; apt-get remove --purge --auto-remove -y gnupg1 && rm -rf /var/lib/apt/lists/* && dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in base module-geoip module-image-filter module-njs module-xslt; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make base module-geoip module-image-filter module-njs module-xslt ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && sed -i 's,PIDFILE=${PIDFILE:-/run/nginx.pid},PIDFILE=${PIDFILE:-/tmp/nginx.pid},' /etc/init.d/nginx && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

USER 101

2026-03-30 04:00:14 UTC (buildkit.dockerfile.v0)

CMD ["nginx" "-g" "daemon off;"]

2026-03-30 04:28:24 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:28:24 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:28:24 UTC (buildkit.dockerfile.v0)

USER root

2026-03-30 04:28:24 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-perl=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in module-perl; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make module-perl ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi # buildkit

2026-03-30 04:28:24 UTC (buildkit.dockerfile.v0)

USER 101

Details
Created

2026-03-30 04:27:30 UTC

Size

67 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-03-30T04:05:47.437Z
  • org.opencontainers.image.description
    Unprivileged NGINX Dockerfiles
  • org.opencontainers.image.licenses
    Apache-2.0
  • org.opencontainers.image.revision
    61141700fbe3bb03ee7379fd0a5cba5c9c5fc885
  • org.opencontainers.image.source
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.title
    docker-nginx-unprivileged
  • org.opencontainers.image.url
    https://github.com/nginx/docker-nginx-unprivileged
  • org.opencontainers.image.version
    1.29.5-perl

Environment
DYNPKG_RELEASE

1~trixie

NGINX_VERSION

1.29.5

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.5

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PKG_RELEASE

1~trixie


Layers

[#000] sha256:2c02a3d3f135c4bbe56488921bd86d969a76dcd5278abca1e81884d3bff0bd88 - 42.47% (28.5 MB)

[#001] sha256:9e83ab6953d61be641519e465e7d8902d48a95627ff1de128bf321b68acbeca9 - 38.75% (26 MB)

[#002] sha256:3dbee7eaf816112bd3a836b5e1cc9db6ed8d3182aebe41aaafb4246c1d7ff0ea - 0.01% (4.09 KB)

[#003] sha256:66b0e8ef66a3b6ba0e5eff20206a25333e0ecfdcd9fd647a1d5f6b3de0e0047e - 0.0% (628 Bytes)

[#004] sha256:4d9250cf9baf77be13a69055e52d13c87d57592d413d98dc336b16048c4ff8d6 - 0.0% (959 Bytes)

[#005] sha256:adc7621cde3a95f48036a5b66118eb8cb65c471300d884351dd828dd88f9825b - 0.0% (407 Bytes)

[#006] sha256:720301285b3348835c486518d6375dd9bbb6854bc0df313dd260494608858dc3 - 0.0% (1.18 KB)

[#007] sha256:106e7442dd00c725cfa515b5d44f1114dc1f22ab57f480ff6c155de6e6e8a898 - 0.0% (1.37 KB)

[#008] sha256:acfd69feea2ddf4acc3b8f7de11098123e92d72daa939038d5a153c265936187 - 18.77% (12.6 MB)


History
2026-03-16 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 's390x' out/ 'trixie' '@1773619200'

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 03:39:53 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x && groupadd --system --gid $GID nginx || true && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid $UID nginx || true && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y gnupg1 ca-certificates && NGINX_GPGKEYS="573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 8540A6F18833A80E9C1653A42FD21310B49F6B46 9E9BE90EACBCDE69FE9B204CBCDCD8A38D88A2B3"; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; export GNUPGHOME="$(mktemp -d)"; found=''; for NGINX_GPGKEY in $NGINX_GPGKEYS; do for server in hkp://keyserver.ubuntu.com:80 pgp.mit.edu ; do echo "Fetching GPG key $NGINX_GPGKEY from $server"; gpg1 --batch --keyserver "$server" --keyserver-options timeout=10 --recv-keys "$NGINX_GPGKEY" && found=yes && break; done; test -z "$found" && echo >&2 "error: failed to fetch GPG key $NGINX_GPGKEY" && exit 1; done; gpg1 --batch --export $NGINX_GPGKEYS > "$NGINX_GPGKEY_PATH" ; rm -rf "$GNUPGHOME"; apt-get remove --purge --auto-remove -y gnupg1 && rm -rf /var/lib/apt/lists/* && dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in base module-geoip module-image-filter module-njs module-xslt; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make base module-geoip module-image-filter module-njs module-xslt ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && sed -i 's,PIDFILE=${PIDFILE:-/run/nginx.pid},PIDFILE=${PIDFILE:-/tmp/nginx.pid},' /etc/init.d/nginx && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

EXPOSE [8080/tcp]

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

USER 101

2026-03-30 03:39:54 UTC (buildkit.dockerfile.v0)

CMD ["nginx" "-g" "daemon off;"]

2026-03-30 04:27:30 UTC (buildkit.dockerfile.v0)

ARG UID=101

2026-03-30 04:27:30 UTC (buildkit.dockerfile.v0)

ARG GID=101

2026-03-30 04:27:30 UTC (buildkit.dockerfile.v0)

USER root

2026-03-30 04:27:30 UTC (buildkit.dockerfile.v0)

RUN |2 UID=101 GID=101 /bin/sh -c set -x; NGINX_GPGKEY_PATH=/etc/apt/keyrings/nginx-archive-keyring.gpg; dpkgArch="$(dpkg --print-architecture)" && nginxPackages=" nginx=${NGINX_VERSION}-${PKG_RELEASE} nginx-module-xslt=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-geoip=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-image-filter=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-perl=${NGINX_VERSION}-${DYNPKG_RELEASE} nginx-module-njs=${NGINX_VERSION}+${NJS_VERSION}-${NJS_RELEASE} " && case "$dpkgArch" in amd64|arm64) echo "deb [signed-by=$NGINX_GPGKEY_PATH] https://nginx.org/packages/mainline/debian/ trixie nginx" >> /etc/apt/sources.list.d/nginx.list && apt-get update ;; *) tempDir="$(mktemp -d)" && chmod 777 "$tempDir" && savedAptMark="$(apt-mark showmanual)" && apt-get update && apt-get install --no-install-recommends --no-install-suggests -y curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && REVISION="${NGINX_VERSION}-${PKG_RELEASE}" && REVISION=${REVISION%~*} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${REVISION}.tar.gz && PKGOSSCHECKSUM="b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${REVISION}.tar.gz" && if [ "$(openssl sha512 -r ${REVISION}.tar.gz)" = "$PKGOSSCHECKSUM" ]; then echo "pkg-oss tarball checksum verification succeeded!"; else echo "pkg-oss tarball checksum verification failed!"; exit 1; fi && tar xzvf ${REVISION}.tar.gz && cd pkg-oss-${REVISION} && cd debian && for target in module-perl; do make rules-$target; mk-build-deps --install --tool="apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes" debuild-$target/nginx-$NGINX_VERSION/debian/control; done && make module-perl ) && apt-mark showmanual | xargs apt-mark auto > /dev/null && { [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark; } && ls -lAFh "$tempDir" && ( cd "$tempDir" && dpkg-scanpackages . > Packages ) && grep '^Package: ' "$tempDir/Packages" && echo "deb [ trusted=yes ] file://$tempDir ./" > /etc/apt/sources.list.d/temp.list && apt-get -o Acquire::GzipIndexes=false update ;; esac && apt-get install --no-install-recommends --no-install-suggests -y $nginxPackages gettext-base curl && apt-get remove --purge --auto-remove -y && rm -rf /var/lib/apt/lists/* /etc/apt/sources.list.d/nginx.list && if [ -n "$tempDir" ]; then apt-get purge -y --auto-remove && rm -rf "$tempDir" /etc/apt/sources.list.d/temp.list; fi # buildkit

2026-03-30 04:27:30 UTC (buildkit.dockerfile.v0)

USER 101

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete