Namespace
uozi
Image / Tag
nginx-ui:v2.3.2
Content Digest
sha256:3f0996babc943a9659b716909f1256962b0261c02cca4681a27920502abb0a77
Details
Created

2025-12-09 09:56:35 UTC

Size

114 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2025-12-09T09:55:53.558Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    cb1fb691aff413a3bf322a5e48bd51c299051724
  • 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
    2.3.2

Environment
DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

NGINX_VERSION

1.29.3

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.4

PATH

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

PKG_RELEASE

1~trixie


Layers

[#000] sha256:d7ecded7702a5dbf6d0f79a71edc34b534d08f3051980e2c948fba72db3197fc - 24.81% (28.4 MB)

[#001] sha256:266626526d42cf7fe5f56b933db3f4c59c0596b7e2c3a556ba5ec4981daf3e9d - 24.97% (28.6 MB)

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

[#003] sha256:d921c57c6a81addac6ca451906699ca6ee8c01fd708805a928181c5370b0a30c - 0.0% (956 Bytes)

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

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

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

[#007] sha256:7c407f81a00663d1a05284a8250269eb829e690ec778d5c0a1e528caf61ba49e - 5.36% (6.13 MB)

[#008] sha256:db2eb2434d92df6559cf394750a39b5bc6feb2f446f736d4ca7a15a27646dd03 - 2.47% (2.83 MB)

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

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

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

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

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

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

[#015] sha256:e46085cbf4b6c99be913d018163ee9f554bb3d21551c5638efa899cffe2620e1 - 0.0% (261 Bytes)

[#016] sha256:752b8f662dce9ffaba391d1f37b81b70c892c97ac5f41532519bd0407466b115 - 0.0% (276 Bytes)

[#017] sha256:e0957f4e2b80de20d3af16b561a1f7228f28a0556230e96fb138e19a14521b3a - 0.0% (563 Bytes)

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

[#019] sha256:491c03bc9050a164d6b4b09679a0f978dbf311336a3d0ef26534e8124a4ff0ba - 42.39% (48.5 MB)

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

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


History
2025-11-03 20:44:10 UTC (debuerreotype 0.16)

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

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

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

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.3

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.4

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2025-11-04 04:06:21 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} " && 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="249858446828ace0c81ea3e057135aa368f3dab83430cf867bb9fc32598948f29c4bd50908491da704536af1106aa87553f6a76cc126c6833dc9b14dd00564b8 *${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

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

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

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

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

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

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

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

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

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-04 04:06:21 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:36:17 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-11-16 00:36:17 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=amd64

2025-11-16 00:36:17 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2025-11-16 00:36:17 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.1.6.2

2025-11-16 00:36:17 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2025-11-16 00:36:17 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=amd64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:36:19 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=amd64

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 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

2025-12-09 09:56:35 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

2025-12-09 09:56:36 UTC

Size

105 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2025-12-09T09:55:53.558Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    cb1fb691aff413a3bf322a5e48bd51c299051724
  • 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
    2.3.2

Environment
DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

NGINX_VERSION

1.29.3

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.4

PATH

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

PKG_RELEASE

1~trixie


Layers

[#000] sha256:453afc2258d7bc5729fed5672fb95bafa092e30a933b4377a12034be940a671b - 25.46% (26.7 MB)

[#001] sha256:046cfa5270909f28dcad9d5e04db6762b7c0da3eb86237ec5fc9a2d48a63c698 - 21.33% (22.3 MB)

[#002] sha256:6553d6a9a1b8ce359df11c4cbd84c3ff220ab92e7362ff8b35a884ac5f33dded - 0.0% (629 Bytes)

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

[#004] sha256:feb855f6984beee2656a0e9d00a36de5828e9e4a7f95333a3efb6d6d66e77357 - 0.0% (406 Bytes)

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

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

[#007] sha256:e64ed63b7071b87cf30e366e96d90526ed47a2ebcc2c46f26371bf39c1beb468 - 6.02% (6.31 MB)

[#008] sha256:2fcc2b8e18508379e697d0b864115422b483d856f30b65469a3fb1a383701adf - 2.89% (3.02 MB)

[#009] sha256:0f70afec821c04b95bb1d87303f72ed73a5c818e610420dcbc6ad96b97cfe0d2 - 0.0% (343 Bytes)

[#010] sha256:99018ad1c9143e19bedfb2a219993337d6541d1c1a9341c4e09bc6c815460459 - 0.0% (269 Bytes)

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

[#012] sha256:37811b9dd6ca05ee4f49d5f6ef69ace56457240dfb05d5ca1274b04c20dc6f16 - 0.0% (217 Bytes)

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

[#014] sha256:11f85bbd992a038679e8ce221f052a1d74e89afd74e16545624686d47e8a4ad4 - 0.0% (624 Bytes)

[#015] sha256:dccb7d56daff6034502595f9bc8f75c3896d7674cadea59eb8a0bf199e23fa19 - 0.0% (262 Bytes)

[#016] sha256:09610c61d3c2c9e70c268c52bdce867d3db036cea3147ab7a8284c6930161ccb - 0.0% (274 Bytes)

[#017] sha256:3837ddf8da14b52bd4a0123d72c77bd54733c4b5a8f4366db6da5263f871249a - 0.0% (562 Bytes)

[#018] sha256:824d856d0a17606bc4050db1c074737408b709d2e1e566d45b1523fc656937d9 - 0.0% (512 Bytes)

[#019] sha256:575e4df2bfc80e22f39816154dd7f5b0c769c084ae04906879c07cb251f317f1 - 44.3% (46.4 MB)

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

[#021] sha256:8d8af8938ca2ee8acd41877242b8b554ffd838bc38fb6d72c9f9e5cfb72ee6df - 0.0% (188 Bytes)


History
2025-11-03 20:44:10 UTC (debuerreotype 0.16)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.3

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.4

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2025-11-04 00:30:03 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} " && 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="249858446828ace0c81ea3e057135aa368f3dab83430cf867bb9fc32598948f29c4bd50908491da704536af1106aa87553f6a76cc126c6833dc9b14dd00564b8 *${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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v5

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.1.6.2

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v5 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v5

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 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

2025-12-09 09:56:36 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

2025-12-09 09:56:36 UTC

Size

105 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2025-12-09T09:55:53.558Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    cb1fb691aff413a3bf322a5e48bd51c299051724
  • 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
    2.3.2

Environment
DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

NGINX_VERSION

1.29.3

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.4

PATH

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

PKG_RELEASE

1~trixie


Layers

[#000] sha256:453afc2258d7bc5729fed5672fb95bafa092e30a933b4377a12034be940a671b - 25.46% (26.7 MB)

[#001] sha256:046cfa5270909f28dcad9d5e04db6762b7c0da3eb86237ec5fc9a2d48a63c698 - 21.33% (22.3 MB)

[#002] sha256:6553d6a9a1b8ce359df11c4cbd84c3ff220ab92e7362ff8b35a884ac5f33dded - 0.0% (629 Bytes)

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

[#004] sha256:feb855f6984beee2656a0e9d00a36de5828e9e4a7f95333a3efb6d6d66e77357 - 0.0% (406 Bytes)

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

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

[#007] sha256:bd1b94b23974feabe097a72130c318364db95f9782f385128d30b0060af34f9f - 6.02% (6.31 MB)

[#008] sha256:2fcc2b8e18508379e697d0b864115422b483d856f30b65469a3fb1a383701adf - 2.89% (3.02 MB)

[#009] sha256:0f70afec821c04b95bb1d87303f72ed73a5c818e610420dcbc6ad96b97cfe0d2 - 0.0% (343 Bytes)

[#010] sha256:99018ad1c9143e19bedfb2a219993337d6541d1c1a9341c4e09bc6c815460459 - 0.0% (269 Bytes)

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

[#012] sha256:37811b9dd6ca05ee4f49d5f6ef69ace56457240dfb05d5ca1274b04c20dc6f16 - 0.0% (217 Bytes)

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

[#014] sha256:63cfde2ba0b563e3766415df4b2c0f85e38d5cbe54efe6c967ae328e697e2c87 - 0.0% (626 Bytes)

[#015] sha256:dccb7d56daff6034502595f9bc8f75c3896d7674cadea59eb8a0bf199e23fa19 - 0.0% (262 Bytes)

[#016] sha256:09610c61d3c2c9e70c268c52bdce867d3db036cea3147ab7a8284c6930161ccb - 0.0% (274 Bytes)

[#017] sha256:3837ddf8da14b52bd4a0123d72c77bd54733c4b5a8f4366db6da5263f871249a - 0.0% (562 Bytes)

[#018] sha256:824d856d0a17606bc4050db1c074737408b709d2e1e566d45b1523fc656937d9 - 0.0% (512 Bytes)

[#019] sha256:66ad20a51da392821c4b729be3a5eb374a8ebaf94d0eac6b280c465b31c1706a - 44.29% (46.4 MB)

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

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


History
2025-11-03 20:44:10 UTC (debuerreotype 0.16)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.3

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.4

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2025-11-04 00:30:03 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} " && 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="249858446828ace0c81ea3e057135aa368f3dab83430cf867bb9fc32598948f29c4bd50908491da704536af1106aa87553f6a76cc126c6833dc9b14dd00564b8 *${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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-04 00:30:03 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v6

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.1.6.2

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2025-11-16 00:37:34 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:37 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:38 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v6 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:38 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v6

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 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

2025-12-09 09:56:36 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

2025-12-09 09:56:36 UTC

Size

103 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2025-12-09T09:55:53.558Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    cb1fb691aff413a3bf322a5e48bd51c299051724
  • 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
    2.3.2

Environment
DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

NGINX_VERSION

1.29.3

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.4

PATH

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

PKG_RELEASE

1~trixie


Layers

[#000] sha256:8945aefb71bd942499dd072e2c7c869b6b74b7c4dd83bff59c209b7b95d52a9f - 24.38% (25 MB)

[#001] sha256:484c4f4c2a5f3332078d950328f7fad21d14e5914dff8033c32e8704001a6c7b - 21.78% (22.3 MB)

[#002] sha256:eaf027775b62a700cf8d7346d9c6929361c4da50988b4d503335cff50934ff8d - 0.0% (629 Bytes)

[#003] sha256:ce85ba2cf95a9996bf9b113942e81cf55842d3fbb2935fb14fceefa1de08e3f8 - 0.0% (958 Bytes)

[#004] sha256:c4dab308cbb11ce1ce94810b89115fd7a2f96ac70c0edf5a751d65eb62ed8f53 - 0.0% (407 Bytes)

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

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

[#007] sha256:891288759c250be6d575e68bb5fa51146855f9b97d38f99a90afc0abd6f3269c - 5.69% (5.84 MB)

[#008] sha256:4668f2c5fee8f1a911a01ae1159e310944950234d173a4ae1aa14ebef01c563f - 2.95% (3.02 MB)

[#009] sha256:f7db8157651d83c588af601cc5010975e21267842b7c34f9e5f312aa9a57350c - 0.0% (342 Bytes)

[#010] sha256:f529ef2266562f733bca507f248d5aa42b6f52f84cc5261ba0e85d7ec40d10d3 - 0.0% (269 Bytes)

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

[#012] sha256:c390ef33690885b8bba3b6182e5716dd6581d93ce3614643cb5e030134783cde - 0.0% (217 Bytes)

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

[#014] sha256:4821307ef922e5f84632b3ef2e3d946ea5292c2fb8dab908c67703261e042787 - 0.0% (627 Bytes)

[#015] sha256:b268df855f55be525440e0d3e70c03ac6314d8f9e019c496d595f63895a4754e - 0.0% (263 Bytes)

[#016] sha256:09610c61d3c2c9e70c268c52bdce867d3db036cea3147ab7a8284c6930161ccb - 0.0% (274 Bytes)

[#017] sha256:bc0168fc57b6fcdde1efa7085045d9f42ae02162a9540543f5a41f5ccde8ba97 - 0.0% (564 Bytes)

[#018] sha256:69b347659c0d20a94a74962ee164dbff356b3e6d3d2909f8b2808ca636f33738 - 0.0% (514 Bytes)

[#019] sha256:771c7b956477eefb99afdbfa35ec381bf1ceeafcca3e0a72a9ae3cdbb4205f2f - 45.19% (46.3 MB)

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

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


History
2025-11-03 20:44:10 UTC (debuerreotype 0.16)

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

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

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

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.3

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.4

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2025-11-04 02:11:47 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} " && 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="249858446828ace0c81ea3e057135aa368f3dab83430cf867bb9fc32598948f29c4bd50908491da704536af1106aa87553f6a76cc126c6833dc9b14dd00564b8 *${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

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

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

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

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

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

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

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

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

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-04 02:11:47 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:08 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-11-16 00:37:08 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2025-11-16 00:37:08 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v7

2025-11-16 00:37:08 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.1.6.2

2025-11-16 00:37:08 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2025-11-16 00:37:08 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:12 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:12 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:12 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:12 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:12 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:12 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:13 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm TARGETVARIANT=v7 S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:13 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=v7

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 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

2025-12-09 09:56:36 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

2025-12-09 09:56:36 UTC

Size

110 MB

Content Digest
Labels
  • maintainer
    NGINX Docker Maintainers <docker-maint@nginx.com>
  • org.opencontainers.image.created
    2025-12-09T09:55:53.558Z
  • org.opencontainers.image.description
    Yet another WebUI for Nginx
  • org.opencontainers.image.licenses
    AGPL-3.0
  • org.opencontainers.image.revision
    cb1fb691aff413a3bf322a5e48bd51c299051724
  • 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
    2.3.2

Environment
DEBIAN_FRONTEND

noninteractive

DYNPKG_RELEASE

1~trixie

NGINX_UI_OFFICIAL_DOCKER

true

NGINX_UI_WORKING_DIR

/var/run/

NGINX_VERSION

1.29.3

NJS_RELEASE

1~trixie

NJS_VERSION

0.9.4

PATH

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

PKG_RELEASE

1~trixie


Layers

[#000] sha256:51365f04b68881c6fd3d04aa38cdb689fdee6efba2aa6afcf2da5385022cf475 - 26.07% (28.7 MB)

[#001] sha256:7d3a535ffc2fc56da973314114adbd69373bdac6e65518ccd973a2048ad35417 - 24.3% (26.8 MB)

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

[#003] sha256:59679015de7391a6955f9bf5ee9531bfaf9664e1d2115923b34b7e211293e90a - 0.0% (956 Bytes)

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

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

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

[#007] sha256:1dfd6d8fe9cc9771b92324673836af6b8654b9a0a26d9c3ce6a13cba557e9c65 - 5.48% (6.04 MB)

[#008] sha256:1d1a4eca2813e8e24728d4e168667a748f8bdfaee9d6c4e7801ecb784a1893f1 - 2.95% (3.25 MB)

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

[#010] sha256:f05f75b2566aa33398b4609d7d7b9c94592f63b75b74dc270da40d99e7b5969d - 0.0% (269 Bytes)

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

[#012] sha256:58be430367c142968d61cda5efab1f99fe4f7a58e0ef7134a315c3bc7e9ccecd - 0.0% (217 Bytes)

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

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

[#015] sha256:563d8e351804f848be1598e8e8b3d2cba08817ea9e3069af45d502193d7fb98b - 0.0% (261 Bytes)

[#016] sha256:09610c61d3c2c9e70c268c52bdce867d3db036cea3147ab7a8284c6930161ccb - 0.0% (274 Bytes)

[#017] sha256:208c3311f83c7a21541693d670766690494ef04e3f636f14bcc7de9f3baf9ceb - 0.0% (563 Bytes)

[#018] sha256:4e576c05b18b3a0383122169c93d69eebe206ebd1a3845e407624fd254218e67 - 0.0% (512 Bytes)

[#019] sha256:f8400ac24f4bcf09dc15e0b8fe33197876de0b21221730cf0007b088c34feda6 - 41.2% (45.4 MB)

[#020] sha256:870e313cf28969fb87ba0d86a29f138d7dba44e8a58d2984b36956d772280298 - 0.0% (278 Bytes)

[#021] sha256:8d4e496a0c976e265657276abe447aec9526ad8def6c165b36ed771ef6cc497b - 0.0% (188 Bytes)


History
2025-11-03 20:44:10 UTC (debuerreotype 0.16)

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

2025-11-04 01:17:49 UTC (buildkit.dockerfile.v0)

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

2025-11-04 01:17:49 UTC (buildkit.dockerfile.v0)

ENV NGINX_VERSION=1.29.3

2025-11-04 01:17:49 UTC (buildkit.dockerfile.v0)

ENV NJS_VERSION=0.9.4

2025-11-04 01:17:49 UTC (buildkit.dockerfile.v0)

ENV NJS_RELEASE=1~trixie

2025-11-04 01:17:49 UTC (buildkit.dockerfile.v0)

ENV PKG_RELEASE=1~trixie

2025-11-04 01:17:49 UTC (buildkit.dockerfile.v0)

ENV DYNPKG_RELEASE=1~trixie

2025-11-04 01:17:49 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} " && 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="249858446828ace0c81ea3e057135aa368f3dab83430cf867bb9fc32598948f29c4bd50908491da704536af1106aa87553f6a76cc126c6833dc9b14dd00564b8 *${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

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

COPY docker-entrypoint.sh / # buildkit

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

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

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

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

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

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

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

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

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/docker-entrypoint.sh"]

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

EXPOSE map[80/tcp:{}]

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

STOPSIGNAL SIGQUIT

2025-11-04 01:17:50 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:17 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-11-16 00:37:17 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm64

2025-11-16 00:37:17 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2025-11-16 00:37:17 UTC (buildkit.dockerfile.v0)

ARG S6_OVERLAY_VERSION=3.1.6.2

2025-11-16 00:37:17 UTC (buildkit.dockerfile.v0)

ENV DEBIAN_FRONTEND=noninteractive

2025-11-16 00:37:17 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:21 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:21 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:21 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:21 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:21 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:21 UTC (buildkit.dockerfile.v0)

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

2025-11-16 00:37:22 UTC (buildkit.dockerfile.v0)

RUN |4 TARGETOS=linux TARGETARCH=arm64 TARGETVARIANT= S6_OVERLAY_VERSION=3.1.6.2 /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

2025-11-16 00:37:22 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/init"]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETOS=linux

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETARCH=arm64

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ARG TARGETVARIANT=

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

EXPOSE [443/tcp 80/tcp]

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_OFFICIAL_DOCKER=true

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

ENV NGINX_UI_WORKING_DIR=/var/run/

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:33 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 UTC (buildkit.dockerfile.v0)

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

2025-12-09 09:56:35 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

2025-12-09 09:56:36 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