Namespace
uozi
Image / Tag
nginx-ui:sha-a917f8b
Content Digest
sha256:2482fcea2047617c94d238386cb0ef0a944179991ce30e451181f224f75343bf
Details
Created

2026-02-07 03:40:21 UTC

Size

118 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-02-07T03:39:48.808Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    a917f8ba79959b5ce96012f94380bba140922dd8
  • org.opencontainers.image.source
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.title
    nginx-ui
  • org.opencontainers.image.url
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.version
    cursor-access-log-dark-mode-font-dfdc

Environment
ACME_VERSION

0.3.1

DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

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:0c8d55a45c0dc58de60579b9cc5b708de9e7957f4591fc7de941b67c7e245da0 - 24.1% (28.4 MB)

[#001] sha256:46bf3a120c8ebc0c207a3a819bb44ad7e6bbcd0b27c2c8e7430b8baea6c321d2 - 26.81% (31.6 MB)

[#002] sha256:4f4efe02d542e6a146723a61b42b2e063b2f89f58430dd4d9a8aad7ac26c905c - 0.0% (625 Bytes)

[#003] sha256:7b6cb8ccac7b09e037d667024c9afc9c0429738a2b7b24c2d41f5bce008c139c - 0.0% (955 Bytes)

[#004] sha256:f73400a233fdfe4b0e1ebf8a8035349bf8b8cfdc85da665c97b4099d1e8ae7df - 0.0% (404 Bytes)

[#005] sha256:47cd406a84ef91b76fa7a653ed5e89663af9f8c2644a0ed0387fa0b1395e5114 - 0.0% (1.18 KB)

[#006] sha256:bae5a1799a803b0a3df8179c56dd95fdb6f88c7aa10600d101196c723994f679 - 0.0% (1.36 KB)

[#007] sha256:d827f1cc17e569e5a70d3944a844b6faf20df87b883a91ca7f7ab3f59245a5fe - 4.7% (5.54 MB)

[#008] sha256:65bed5b9431d99f502cd751801d966c3638f50edf667c278132d726ece75ce07 - 2.49% (2.93 MB)

[#009] sha256:2d43597a72df16198a15cfdd1ab3dfc7992354d9954012a2d7f32218589ebf15 - 0.0% (340 Bytes)

[#010] sha256:b2a745de7bd72e25e21886ec4e887c72d67fb6df5a95f881dd79d6f36fa83983 - 0.0% (267 Bytes)

[#011] sha256:f00f7ef7461f09a74f0fa745d1f9c1f25fd50828ea38c9261f63877999f6dff5 - 0.0% (2.75 KB)

[#012] sha256:df8b92fe87a0689b1f986910cf1193c2939d63ddd9bef0b67abd3cb956dc7d53 - 0.0% (216 Bytes)

[#013] sha256:6592730b85156909139fc17e61ebde238341cbe84938f92c5649fd39041eac78 - 0.0% (468 Bytes)

[#014] sha256:6468dd0888bdfcc825514d5e033cf8c6a0272210b15dbff500e7541223e2c184 - 0.0% (625 Bytes)

[#015] sha256:650521b7d3f6fa026293eea8c5ee4ab065f9a81996ae0469e17b577e462e6340 - 0.0% (256 Bytes)

[#016] sha256:20ed480b9d1ee25588a65eae7a919247aa7aa3059596ba8671d5093641d42411 - 0.0% (273 Bytes)

[#017] sha256:8f454cf6ab39984b89fd61628da9bc660995f11bdd9fe8bf4c5f250b7e1d374c - 0.0% (562 Bytes)

[#018] sha256:0b265435ada23499494dfb26170462229e3209de15db0d455cbc47bc6488a053 - 0.0% (513 Bytes)

[#019] sha256:8235d3c6d3787c0b0a5abb3be1680ae5f21cfa1b9f7a228e2e79f6afbd625d7e - 41.89% (49.4 MB)

[#020] sha256:43d14d51a00c35b4ab75e3f0e2d165723a7b44f3ffe2d22f7ace1ed6fe9c6da0 - 0.0% (273 Bytes)

[#021] sha256:484c742f318c49bdd1130e2cf44afa92f0f18d891df6dfdba3c4df1380ad9219 - 0.0% (187 Bytes)


History
2026-02-02 00:00:00 UTC (debuerreotype 0.17)

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

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

ENV ACME_VERSION=0.3.1

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -x && groupadd --system --gid 101 nginx && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid 101 nginx && 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} nginx-module-acme=${NGINX_VERSION}+${ACME_VERSION}-${PKG_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 cargo curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && export CARGO_HOME="$tempDir/.cargo" && 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 module-acme; 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 module-acme ) && 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-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-02-04 23:53:09 UTC (buildkit.dockerfile.v0)

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

2026-02-07 00:07:14 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 00:07:14 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=amd64

2026-02-07 00:07:14 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2026-02-07 00:07:14 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.2.1.0

2026-02-07 00:07:14 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-02-07 00:07:14 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c apt-get update -y && apt install -y --no-install-recommends wget xz-utils logrotate nginx-module-geoip && rm -rf /var/lib/apt/lists/* # buildkit

2026-02-07 00:07:16 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c case "${TARGETARCH}/${TARGETVARIANT}" in "amd64/"*) S6_ARCH="x86_64" ;; "arm64/"*) S6_ARCH="aarch64" ;; "arm/v7"*) S6_ARCH="arm" ;; "arm/v6"*) S6_ARCH="arm" ;; "arm/v5"*) S6_ARCH="arm" ;; *) echo "Unsupported arch: ${TARGETARCH}/${TARGETVARIANT}" && exit 1 ;; esac && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz && wget -O /tmp/s6-overlay-${S6_ARCH}.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-${S6_ARCH}.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-${S6_ARCH}.tar.xz && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz # buildkit

2026-02-07 00:07:16 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/nginx /etc/s6-overlay/s6-rc.d/nginx/run # buildkit

2026-02-07 00:07:16 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx # buildkit

2026-02-07 00:07:16 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c mkdir -p /usr/local/etc && mkdir /etc/nginx/sites-available && mkdir /etc/nginx/sites-enabled && mkdir /etc/nginx/streams-available && mkdir /etc/nginx/streams-enabled && cp -r /etc/nginx /usr/local/etc/nginx # buildkit

2026-02-07 00:07:16 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.up /etc/s6-overlay/s6-rc.d/init-config/up # buildkit

2026-02-07 00:07:16 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.sh /etc/s6-overlay/s6-rc.d/init-config/init-config.sh # buildkit

2026-02-07 00:07:17 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c chmod +x /etc/s6-overlay/s6-rc.d/init-config/init-config.sh && echo 'oneshot' > /etc/s6-overlay/s6-rc.d/init-config/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/init-config && mkdir -p /etc/s6-overlay/s6-rc.d/nginx/dependencies.d && touch /etc/s6-overlay/s6-rc.d/nginx/dependencies.d/init-config # buildkit

2026-02-07 00:07:17 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=amd64

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.run /etc/s6-overlay/s6-rc.d/nginx-ui/run # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx-ui/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx-ui # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx.conf /usr/local/etc/nginx/nginx.conf # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.conf /usr/local/etc/nginx/conf.d/nginx-ui.conf # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-linux-amd64/nginx-ui /usr/local/bin/nginx-ui # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= /bin/sh -c rm -f /etc/nginx/conf.d/default.conf && rm -f /usr/local/etc/nginx/conf.d/default.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= /bin/sh -c rm -f /var/log/nginx/access.log && touch /var/log/nginx/access.log && rm -f /var/log/nginx/error.log && touch /var/log/nginx/error.log # buildkit

Details
Created

2026-02-07 03:40:21 UTC

Size

108 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-02-07T03:39:48.808Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    a917f8ba79959b5ce96012f94380bba140922dd8
  • org.opencontainers.image.source
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.title
    nginx-ui
  • org.opencontainers.image.url
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.version
    cursor-access-log-dark-mode-font-dfdc

Environment
ACME_VERSION

0.3.1

DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

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:2a2986ba48ae233640829460f6772db2ffbc330d97d2b29a533694dfdc7dc893 - 24.76% (26.7 MB)

[#001] sha256:3026da25d314020b9bfb3f9a7df209bb439855051ffdf13a1bddecd5d65b9764 - 23.18% (25 MB)

[#002] sha256:31d394b0c9eda37c098db2471823834f196fc546d924d31f47e554b378133051 - 0.0% (622 Bytes)

[#003] sha256:160550a38939336200af2cd259eca3335d639a3cd12a56d1489ba1ed975ab63e - 0.0% (955 Bytes)

[#004] sha256:2d60fc99a13273494ddd0db00d237d67b3c2ce7871ca036b2f20d7b67bd9cc04 - 0.0% (403 Bytes)

[#005] sha256:f555b1dc3229914c0a06e99b683bad0845529b5014af39c989682d849d6435a3 - 0.0% (1.18 KB)

[#006] sha256:8f6e65a70f11422cc1b5007f8e7e22f124f40db1d8ab33268f3b00615b5be8b0 - 0.0% (1.36 KB)

[#007] sha256:e489783c07dee50c1d84e60450e2583ec95cb862e6dd60853fc322f0dde77398 - 5.31% (5.71 MB)

[#008] sha256:46824d0ac24347fdd8089693c9869a1c24eeda6ae2dbe1bc937fcf03292ea231 - 2.88% (3.1 MB)

[#009] sha256:48df9ffbb8b3531220f9650c3c074eb7e961f6e3390c5429608c99d481ceae5e - 0.0% (339 Bytes)

[#010] sha256:f48433e34060ecc629f14ee108483709977e72e756ac5f3e29391258596e5af9 - 0.0% (268 Bytes)

[#011] sha256:af12b37e013559a1f0a875a2f64db5f182ac798a06cd7f05274d406e871b9719 - 0.0% (2.75 KB)

[#012] sha256:d66b4ac54bd10c519aa7656ce7a3bf8cd53f75cf50747128583c6e24ea1f779a - 0.0% (214 Bytes)

[#013] sha256:2b0338753834efb95e69e85deb72da51f9deeb2ef4378ca1f47b6439735f7734 - 0.0% (469 Bytes)

[#014] sha256:fd96e43fc2a65530f58b5daca28e75b1d84847934761603b714c4a5797f16aad - 0.0% (622 Bytes)

[#015] sha256:8fe9a8b18ef76dd124ee26a1cfc88f394d9ae2140cf9bdd763a5e46dd2244830 - 0.0% (256 Bytes)

[#016] sha256:c8c8b2c266338c4e58b5cd92b622c7c3e6c9c06cd01590e72bdaf02b506f85cf - 0.0% (275 Bytes)

[#017] sha256:942798aebc3135d91787c8531176b168648e02b1e292fe17a57ed1ff47665c37 - 0.0% (562 Bytes)

[#018] sha256:ef47f7835e53293e78f1c81ebad2b324d5bb99542dea31ecd9424b851cfb339c - 0.0% (511 Bytes)

[#019] sha256:33239887449cf9d41509306ffe97f53fb7e452acdad1c5115e25fa50d46239ea - 43.85% (47.2 MB)

[#020] sha256:ea043657ae315864b6027486418d953883a30b65b213d4fc95b06b6db095781d - 0.0% (276 Bytes)

[#021] sha256:b56d5beccb11f8d8fda03cd5046d9b3ca70db6800e35c2b3562da2e73da9c451 - 0.0% (187 Bytes)


History
2026-02-02 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'armel' out/ 'trixie' '@1769990400'

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV ACME_VERSION=0.3.1

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -x && groupadd --system --gid 101 nginx && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid 101 nginx && 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} nginx-module-acme=${NGINX_VERSION}+${ACME_VERSION}-${PKG_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 cargo curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && export CARGO_HOME="$tempDir/.cargo" && 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 module-acme; 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 module-acme ) && 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-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-07 00:08:30 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 00:08:30 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2026-02-07 00:08:30 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v5

2026-02-07 00:08:30 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.2.1.0

2026-02-07 00:08:30 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-02-07 00:08:30 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c apt-get update -y && apt install -y --no-install-recommends wget xz-utils logrotate nginx-module-geoip && rm -rf /var/lib/apt/lists/* # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c case "${TARGETARCH}/${TARGETVARIANT}" in "amd64/"*) S6_ARCH="x86_64" ;; "arm64/"*) S6_ARCH="aarch64" ;; "arm/v7"*) S6_ARCH="arm" ;; "arm/v6"*) S6_ARCH="arm" ;; "arm/v5"*) S6_ARCH="arm" ;; *) echo "Unsupported arch: ${TARGETARCH}/${TARGETVARIANT}" && exit 1 ;; esac && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz && wget -O /tmp/s6-overlay-${S6_ARCH}.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-${S6_ARCH}.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-${S6_ARCH}.tar.xz && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/nginx /etc/s6-overlay/s6-rc.d/nginx/run # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c mkdir -p /usr/local/etc && mkdir /etc/nginx/sites-available && mkdir /etc/nginx/sites-enabled && mkdir /etc/nginx/streams-available && mkdir /etc/nginx/streams-enabled && cp -r /etc/nginx /usr/local/etc/nginx # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.up /etc/s6-overlay/s6-rc.d/init-config/up # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.sh /etc/s6-overlay/s6-rc.d/init-config/init-config.sh # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c chmod +x /etc/s6-overlay/s6-rc.d/init-config/init-config.sh && echo 'oneshot' > /etc/s6-overlay/s6-rc.d/init-config/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/init-config && mkdir -p /etc/s6-overlay/s6-rc.d/nginx/dependencies.d && touch /etc/s6-overlay/s6-rc.d/nginx/dependencies.d/init-config # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v5

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.run /etc/s6-overlay/s6-rc.d/nginx-ui/run # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx-ui/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx-ui # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx.conf /usr/local/etc/nginx/nginx.conf # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.conf /usr/local/etc/nginx/conf.d/nginx-ui.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-linux-armv5/nginx-ui /usr/local/bin/nginx-ui # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 /bin/sh -c rm -f /etc/nginx/conf.d/default.conf && rm -f /usr/local/etc/nginx/conf.d/default.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 /bin/sh -c rm -f /var/log/nginx/access.log && touch /var/log/nginx/access.log && rm -f /var/log/nginx/error.log && touch /var/log/nginx/error.log # buildkit

Details
Created

2026-02-07 03:40:21 UTC

Size

108 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-02-07T03:39:48.808Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    a917f8ba79959b5ce96012f94380bba140922dd8
  • org.opencontainers.image.source
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.title
    nginx-ui
  • org.opencontainers.image.url
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.version
    cursor-access-log-dark-mode-font-dfdc

Environment
ACME_VERSION

0.3.1

DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

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:2a2986ba48ae233640829460f6772db2ffbc330d97d2b29a533694dfdc7dc893 - 24.77% (26.7 MB)

[#001] sha256:3026da25d314020b9bfb3f9a7df209bb439855051ffdf13a1bddecd5d65b9764 - 23.19% (25 MB)

[#002] sha256:31d394b0c9eda37c098db2471823834f196fc546d924d31f47e554b378133051 - 0.0% (622 Bytes)

[#003] sha256:160550a38939336200af2cd259eca3335d639a3cd12a56d1489ba1ed975ab63e - 0.0% (955 Bytes)

[#004] sha256:2d60fc99a13273494ddd0db00d237d67b3c2ce7871ca036b2f20d7b67bd9cc04 - 0.0% (403 Bytes)

[#005] sha256:f555b1dc3229914c0a06e99b683bad0845529b5014af39c989682d849d6435a3 - 0.0% (1.18 KB)

[#006] sha256:8f6e65a70f11422cc1b5007f8e7e22f124f40db1d8ab33268f3b00615b5be8b0 - 0.0% (1.36 KB)

[#007] sha256:79ac25f17db8924348ffb7fff326dbaff21565c5ebe35f3f9aee5375dcb37dcc - 5.31% (5.71 MB)

[#008] sha256:77d382f8e76075e234d8303f3e2617aa6b9a777adadb1b665e0ad12d4f7275ec - 2.89% (3.1 MB)

[#009] sha256:2e5e17d6c0bda14e5321521337f42bdd67a1d5e98a6f5c6fae4c07c18dc46865 - 0.0% (341 Bytes)

[#010] sha256:098925dc5dbcea1d40cc6703d7581964e21c9a921583cfd6ac2def2c0437ae33 - 0.0% (267 Bytes)

[#011] sha256:4f34c09db1772780a3ec8867fef198151cce558e678a8645460f18bf66ddad21 - 0.0% (2.75 KB)

[#012] sha256:932997de64f2acf2e788d8428e2f67967a42dc71211026e4888c819120607b63 - 0.0% (218 Bytes)

[#013] sha256:551efd80e48c8bad1d0bc0879fdf9ee1aaae8cfa198368c10d36ccfbb38a3c45 - 0.0% (470 Bytes)

[#014] sha256:fd96e43fc2a65530f58b5daca28e75b1d84847934761603b714c4a5797f16aad - 0.0% (622 Bytes)

[#015] sha256:8fe9a8b18ef76dd124ee26a1cfc88f394d9ae2140cf9bdd763a5e46dd2244830 - 0.0% (256 Bytes)

[#016] sha256:c8c8b2c266338c4e58b5cd92b622c7c3e6c9c06cd01590e72bdaf02b506f85cf - 0.0% (275 Bytes)

[#017] sha256:942798aebc3135d91787c8531176b168648e02b1e292fe17a57ed1ff47665c37 - 0.0% (562 Bytes)

[#018] sha256:ef47f7835e53293e78f1c81ebad2b324d5bb99542dea31ecd9424b851cfb339c - 0.0% (511 Bytes)

[#019] sha256:124a3eb547ed4c00434dfb417aef2deee65224a726ae4170635813f5c90f91ef - 43.84% (47.2 MB)

[#020] sha256:ea043657ae315864b6027486418d953883a30b65b213d4fc95b06b6db095781d - 0.0% (276 Bytes)

[#021] sha256:b56d5beccb11f8d8fda03cd5046d9b3ca70db6800e35c2b3562da2e73da9c451 - 0.0% (187 Bytes)


History
2026-02-02 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'armel' out/ 'trixie' '@1769990400'

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV ACME_VERSION=0.3.1

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -x && groupadd --system --gid 101 nginx && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid 101 nginx && 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} nginx-module-acme=${NGINX_VERSION}+${ACME_VERSION}-${PKG_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 cargo curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && export CARGO_HOME="$tempDir/.cargo" && 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 module-acme; 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 module-acme ) && 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-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-02-05 00:02:24 UTC (buildkit.dockerfile.v0)

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

2026-02-07 00:08:29 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 00:08:29 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2026-02-07 00:08:29 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v6

2026-02-07 00:08:29 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.2.1.0

2026-02-07 00:08:29 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-02-07 00:08:29 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c apt-get update -y && apt install -y --no-install-recommends wget xz-utils logrotate nginx-module-geoip && rm -rf /var/lib/apt/lists/* # buildkit

2026-02-07 00:08:32 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c case "${TARGETARCH}/${TARGETVARIANT}" in "amd64/"*) S6_ARCH="x86_64" ;; "arm64/"*) S6_ARCH="aarch64" ;; "arm/v7"*) S6_ARCH="arm" ;; "arm/v6"*) S6_ARCH="arm" ;; "arm/v5"*) S6_ARCH="arm" ;; *) echo "Unsupported arch: ${TARGETARCH}/${TARGETVARIANT}" && exit 1 ;; esac && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz && wget -O /tmp/s6-overlay-${S6_ARCH}.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-${S6_ARCH}.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-${S6_ARCH}.tar.xz && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz # buildkit

2026-02-07 00:08:32 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/nginx /etc/s6-overlay/s6-rc.d/nginx/run # buildkit

2026-02-07 00:08:32 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c mkdir -p /usr/local/etc && mkdir /etc/nginx/sites-available && mkdir /etc/nginx/sites-enabled && mkdir /etc/nginx/streams-available && mkdir /etc/nginx/streams-enabled && cp -r /etc/nginx /usr/local/etc/nginx # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.up /etc/s6-overlay/s6-rc.d/init-config/up # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.sh /etc/s6-overlay/s6-rc.d/init-config/init-config.sh # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c chmod +x /etc/s6-overlay/s6-rc.d/init-config/init-config.sh && echo 'oneshot' > /etc/s6-overlay/s6-rc.d/init-config/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/init-config && mkdir -p /etc/s6-overlay/s6-rc.d/nginx/dependencies.d && touch /etc/s6-overlay/s6-rc.d/nginx/dependencies.d/init-config # buildkit

2026-02-07 00:08:33 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v6

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.run /etc/s6-overlay/s6-rc.d/nginx-ui/run # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx-ui/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx-ui # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx.conf /usr/local/etc/nginx/nginx.conf # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.conf /usr/local/etc/nginx/conf.d/nginx-ui.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-linux-armv6/nginx-ui /usr/local/bin/nginx-ui # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 /bin/sh -c rm -f /etc/nginx/conf.d/default.conf && rm -f /usr/local/etc/nginx/conf.d/default.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 /bin/sh -c rm -f /var/log/nginx/access.log && touch /var/log/nginx/access.log && rm -f /var/log/nginx/error.log && touch /var/log/nginx/error.log # buildkit

Details
Created

2026-02-07 03:40:21 UTC

Size

105 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-02-07T03:39:48.808Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    a917f8ba79959b5ce96012f94380bba140922dd8
  • org.opencontainers.image.source
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.title
    nginx-ui
  • org.opencontainers.image.url
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.version
    cursor-access-log-dark-mode-font-dfdc

Environment
ACME_VERSION

0.3.1

DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

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:abdd0f3062e6238c89a40b3e40277debcba2796d6736373219a089086718b8b4 - 23.7% (25 MB)

[#001] sha256:2b6e0b6dc1e3f8f4af1ecd7d6b6e2d7587a229c2ab1964a976de77df9ed0ed68 - 23.6% (24.9 MB)

[#002] sha256:b993d744ab94d8be2b3f84f956c2f02619627414b029fbfc8c7228c4b17154dd - 0.0% (628 Bytes)

[#003] sha256:f43efd7d1d2163717044c78ee88600431c4855657cc0cb097df26f20e4e99c02 - 0.0% (957 Bytes)

[#004] sha256:b81d4686b1436a3d1d78b45c96e0cd77c5a5d2c4ad34f422d40dad39044ab24d - 0.0% (405 Bytes)

[#005] sha256:65a6f95fa97027d4cdcc2bbe674d6d417717e1a5742cc576c147ad042f941720 - 0.0% (1.18 KB)

[#006] sha256:b4723134ec30860e62adb2ff9b00b0c142506c41f196e7934cb7d43503693db0 - 0.0% (1.37 KB)

[#007] sha256:5a7f2d24a91713d3ac929d56c731d5696678ecf6fb63bd6c712cbbc105789ed0 - 5.04% (5.31 MB)

[#008] sha256:7dafc71f52c0487a5649e6a8cf10e87a34dc9574f0ccc5e27409b1fb10a89ff5 - 2.94% (3.1 MB)

[#009] sha256:6b34c16f43e1f040e3fd7fae99dc2e9cfa04da393b15721cd9a785cc0ece57a1 - 0.0% (341 Bytes)

[#010] sha256:0868c0ed04ac85bd1da979c8f9cfbc45a72dbd92610eb6af0b34203691dd56f1 - 0.0% (267 Bytes)

[#011] sha256:249a64352e071f8a9eceb6bfbc7a69b1cff9412a0a086efc2503cc80e7773cf1 - 0.0% (2.75 KB)

[#012] sha256:ab330e12ece11f40de567452640da252cb9b009382ea8c24d052bfc917da4ddf - 0.0% (215 Bytes)

[#013] sha256:beccdbc0ea447f3c1aa6933ac9330d51a6252277676de14d5c0562672da2b85e - 0.0% (470 Bytes)

[#014] sha256:07d25853be42be0fde0c6dc68986055abb03fe9f22ecb6f7c08b37a815b5b26d - 0.0% (626 Bytes)

[#015] sha256:1509d33bbda525f7d4eccafcd63c4f11281e0f9d2c9a4f46244f1e269a6b5ba2 - 0.0% (258 Bytes)

[#016] sha256:c8c8b2c266338c4e58b5cd92b622c7c3e6c9c06cd01590e72bdaf02b506f85cf - 0.0% (275 Bytes)

[#017] sha256:6b81ccdfc3a44049c17315e232836bc1d8d0f0941faa3cc4a56df520d7935f4a - 0.0% (561 Bytes)

[#018] sha256:5a142b64dac3989c3f6f236ae25c5a7607ab2de465e63ff5923c14da7e290614 - 0.0% (512 Bytes)

[#019] sha256:c3c12de131dea390b0c760356a6cc4ddf5efd780cfd0e95afeed466a7ffcdee2 - 44.7% (47.1 MB)

[#020] sha256:de60affcbc5313164c8ac49e424580cad87604b1125f75e5713562405479d84d - 0.0% (276 Bytes)

[#021] sha256:721cb016d69a68343ab9962904ef9bf2a75bd888d30f5b2a6400591f53081048 - 0.0% (188 Bytes)


History
2026-02-02 00:00:00 UTC (debuerreotype 0.17)

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

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

ENV ACME_VERSION=0.3.1

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -x && groupadd --system --gid 101 nginx && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid 101 nginx && 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} nginx-module-acme=${NGINX_VERSION}+${ACME_VERSION}-${PKG_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 cargo curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && export CARGO_HOME="$tempDir/.cargo" && 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 module-acme; 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 module-acme ) && 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-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

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

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-02-05 00:00:42 UTC (buildkit.dockerfile.v0)

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

2026-02-07 00:08:07 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 00:08:07 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2026-02-07 00:08:07 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v7

2026-02-07 00:08:07 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.2.1.0

2026-02-07 00:08:07 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-02-07 00:08:07 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c apt-get update -y && apt install -y --no-install-recommends wget xz-utils logrotate nginx-module-geoip && rm -rf /var/lib/apt/lists/* # buildkit

2026-02-07 00:08:12 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c case "${TARGETARCH}/${TARGETVARIANT}" in "amd64/"*) S6_ARCH="x86_64" ;; "arm64/"*) S6_ARCH="aarch64" ;; "arm/v7"*) S6_ARCH="arm" ;; "arm/v6"*) S6_ARCH="arm" ;; "arm/v5"*) S6_ARCH="arm" ;; *) echo "Unsupported arch: ${TARGETARCH}/${TARGETVARIANT}" && exit 1 ;; esac && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz && wget -O /tmp/s6-overlay-${S6_ARCH}.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-${S6_ARCH}.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-${S6_ARCH}.tar.xz && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz # buildkit

2026-02-07 00:08:12 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/nginx /etc/s6-overlay/s6-rc.d/nginx/run # buildkit

2026-02-07 00:08:12 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx # buildkit

2026-02-07 00:08:12 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c mkdir -p /usr/local/etc && mkdir /etc/nginx/sites-available && mkdir /etc/nginx/sites-enabled && mkdir /etc/nginx/streams-available && mkdir /etc/nginx/streams-enabled && cp -r /etc/nginx /usr/local/etc/nginx # buildkit

2026-02-07 00:08:12 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.up /etc/s6-overlay/s6-rc.d/init-config/up # buildkit

2026-02-07 00:08:12 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.sh /etc/s6-overlay/s6-rc.d/init-config/init-config.sh # buildkit

2026-02-07 00:08:13 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c chmod +x /etc/s6-overlay/s6-rc.d/init-config/init-config.sh && echo 'oneshot' > /etc/s6-overlay/s6-rc.d/init-config/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/init-config && mkdir -p /etc/s6-overlay/s6-rc.d/nginx/dependencies.d && touch /etc/s6-overlay/s6-rc.d/nginx/dependencies.d/init-config # buildkit

2026-02-07 00:08:13 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v7

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.run /etc/s6-overlay/s6-rc.d/nginx-ui/run # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx-ui/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx-ui # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx.conf /usr/local/etc/nginx/nginx.conf # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.conf /usr/local/etc/nginx/conf.d/nginx-ui.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-linux-armv7/nginx-ui /usr/local/bin/nginx-ui # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 /bin/sh -c rm -f /etc/nginx/conf.d/default.conf && rm -f /usr/local/etc/nginx/conf.d/default.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 /bin/sh -c rm -f /var/log/nginx/access.log && touch /var/log/nginx/access.log && rm -f /var/log/nginx/error.log && touch /var/log/nginx/error.log # buildkit

Details
Created

2026-02-07 03:40:21 UTC

Size

113 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2026-02-07T03:39:48.808Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    a917f8ba79959b5ce96012f94380bba140922dd8
  • org.opencontainers.image.source
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.title
    nginx-ui
  • org.opencontainers.image.url
    https://github.com/0xJacky/nginx-ui
  • org.opencontainers.image.version
    cursor-access-log-dark-mode-font-dfdc

Environment
ACME_VERSION

0.3.1

DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

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:3ea009573b472d108af9af31ec35a06fe3649084f6611cf11f7d594b85cf7a7c - 25.34% (28.7 MB)

[#001] sha256:efc7865cf13e460368cc89c201ba74f7b1e16fd489c647dd9e7c986fefb0da44 - 26.15% (29.7 MB)

[#002] sha256:5380ffdd215e97bce8fae5707d8307604544cb5a9db084290e144412e65c63e0 - 0.0% (626 Bytes)

[#003] sha256:fb8853dab2dabaa33ac144ddfea9f5601edc994cf38763fb8d3b9f7207b89d0c - 0.0% (955 Bytes)

[#004] sha256:1063666c8b8e795e6f8b7da6d7698e4cb8b50b7c49690c297131d16a36789bfa - 0.0% (404 Bytes)

[#005] sha256:0e9ba714bdf166e853fd20a64cb9578030aee1cc891a5db8cf08c0e584c71a57 - 0.0% (1.18 KB)

[#006] sha256:58072fb4fd7c2ee1925f1e45856b849481d10e4fdd51699cfa96849e010d58c0 - 0.0% (1.36 KB)

[#007] sha256:dd4fe4d07217f770e311ab062c219d2344900ec82470c9d9ad47815b22ee79a3 - 4.81% (5.45 MB)

[#008] sha256:840a3f488c9c93deaca1f448190e1f61598c4f98dd6adb88fbe9ce247f8d2eaf - 2.93% (3.33 MB)

[#009] sha256:c0f946441714d1b1772036e0ee69eb285116d9aac4f027e718626eb5d3287ad0 - 0.0% (341 Bytes)

[#010] sha256:18d5d3fcdb0640ad32c69b892749072c5125e976e939170bbd81ccb3d86aa8a2 - 0.0% (267 Bytes)

[#011] sha256:8b6cfdcd3834e20fe62a60716c39952d36b4a91fcc2dc84b1c9a50d8b64f07e3 - 0.0% (2.75 KB)

[#012] sha256:b98b877a66302a42ba8e21811c09a4761836fb3479bff3b524c8835a1e4341ad - 0.0% (216 Bytes)

[#013] sha256:ae0fd14bed9dec85643aed3e043c44cbe760ca5a177c854ef1da743bcd8e33cd - 0.0% (472 Bytes)

[#014] sha256:69160f8385aab5455dc09e9dd8e187921b3092a801c5e3e1d4b3201ae0e7b547 - 0.0% (623 Bytes)

[#015] sha256:1625112d863b2ff2699ad50205a3d4d94ad313556614daa46c3b2127d1b0e4d8 - 0.0% (257 Bytes)

[#016] sha256:c8c8b2c266338c4e58b5cd92b622c7c3e6c9c06cd01590e72bdaf02b506f85cf - 0.0% (275 Bytes)

[#017] sha256:81a4b4851051c9a81295a1ff048f8e41d7d9d091632d07208a7d2ce40c34f9e3 - 0.0% (561 Bytes)

[#018] sha256:3a7a6e327c361606f2eddd5dfdabab99ca673a37e7b0c43c18e9e492e6ac5cc9 - 0.0% (512 Bytes)

[#019] sha256:38992b191014c0f022d0cecd647dfba944f0c6b72c9d367698c6d0748bb0ce6f - 40.76% (46.2 MB)

[#020] sha256:a932079a6c720d1cb5adc8f046369be096109680c7c331ad9c0b17142499405f - 0.0% (277 Bytes)

[#021] sha256:1b51386d02fda05e74309002dd3871db4f8a304a241c218873fbe0b280f93664 - 0.0% (188 Bytes)


History
2026-02-02 00:00:00 UTC (debuerreotype 0.17)

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

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.5

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.5

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

ENV ACME_VERSION=0.3.1

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2026-02-04 23:52:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -x && groupadd --system --gid 101 nginx && useradd --system --gid nginx --no-create-home --home /nonexistent --comment "nginx user" --shell /bin/false --uid 101 nginx && 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} nginx-module-acme=${NGINX_VERSION}+${ACME_VERSION}-${PKG_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 cargo curl devscripts equivs git libxml2-utils lsb-release xsltproc && ( cd "$tempDir" && export CARGO_HOME="$tempDir/.cargo" && 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 module-acme; 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 module-acme ) && 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-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

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

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2026-02-04 23:52:45 UTC (buildkit.dockerfile.v0)

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

2026-02-07 00:08:15 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 00:08:15 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm64

2026-02-07 00:08:15 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2026-02-07 00:08:15 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.2.1.0

2026-02-07 00:08:15 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2026-02-07 00:08:15 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c apt-get update -y && apt install -y --no-install-recommends wget xz-utils logrotate nginx-module-geoip && rm -rf /var/lib/apt/lists/* # buildkit

2026-02-07 00:08:19 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c case "${TARGETARCH}/${TARGETVARIANT}" in "amd64/"*) S6_ARCH="x86_64" ;; "arm64/"*) S6_ARCH="aarch64" ;; "arm/v7"*) S6_ARCH="arm" ;; "arm/v6"*) S6_ARCH="arm" ;; "arm/v5"*) S6_ARCH="arm" ;; *) echo "Unsupported arch: ${TARGETARCH}/${TARGETVARIANT}" && exit 1 ;; esac && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz && wget -O /tmp/s6-overlay-${S6_ARCH}.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-${S6_ARCH}.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-${S6_ARCH}.tar.xz && wget -O /tmp/s6-overlay-noarch.tar.xz https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}/s6-overlay-noarch.tar.xz && tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz # buildkit

2026-02-07 00:08:19 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/nginx /etc/s6-overlay/s6-rc.d/nginx/run # buildkit

2026-02-07 00:08:19 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx # buildkit

2026-02-07 00:08:20 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c mkdir -p /usr/local/etc && mkdir /etc/nginx/sites-available && mkdir /etc/nginx/sites-enabled && mkdir /etc/nginx/streams-available && mkdir /etc/nginx/streams-enabled && cp -r /etc/nginx /usr/local/etc/nginx # buildkit

2026-02-07 00:08:20 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.up /etc/s6-overlay/s6-rc.d/init-config/up # buildkit

2026-02-07 00:08:20 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-base/init-config.sh /etc/s6-overlay/s6-rc.d/init-config/init-config.sh # buildkit

2026-02-07 00:08:20 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.2.1.0 /bin/sh -c chmod +x /etc/s6-overlay/s6-rc.d/init-config/init-config.sh && echo 'oneshot' > /etc/s6-overlay/s6-rc.d/init-config/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/init-config && mkdir -p /etc/s6-overlay/s6-rc.d/nginx/dependencies.d && touch /etc/s6-overlay/s6-rc.d/nginx/dependencies.d/init-config # buildkit

2026-02-07 00:08:20 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm64

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2026-02-07 03:40:18 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.run /etc/s6-overlay/s6-rc.d/nginx-ui/run # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= /bin/sh -c echo 'longrun' > /etc/s6-overlay/s6-rc.d/nginx-ui/type && touch /etc/s6-overlay/s6-rc.d/user/contents.d/nginx-ui # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx.conf /usr/local/etc/nginx/nginx.conf # buildkit

2026-02-07 03:40:19 UTC (buildkit.dockerfile.v0)

COPY resources/docker/nginx-ui.conf /usr/local/etc/nginx/conf.d/nginx-ui.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

COPY nginx-ui-linux-arm64/nginx-ui /usr/local/bin/nginx-ui # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= /bin/sh -c rm -f /etc/nginx/conf.d/default.conf && rm -f /usr/local/etc/nginx/conf.d/default.conf # buildkit

2026-02-07 03:40:21 UTC (buildkit.dockerfile.v0)

RUN |3 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= /bin/sh -c rm -f /var/log/nginx/access.log && touch /var/log/nginx/access.log && rm -f /var/log/nginx/error.log && touch /var/log/nginx/error.log # buildkit

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