{"architecture":"amd64","author":"installer-dev@jfrog.com","config":{"User":"nginx","ExposedPorts":{"80/tcp":{},"8080/tcp":{},"8443/tcp":{}},"Env":["PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","NGINX_VERSION=1.29.0","PKG_RELEASE=1","DYNPKG_RELEASE=1","NJS_VERSION=0.9.0","NJS_RELEASE=1","TARGETARCH=amd64","SUPERCRONIC_VERSION=0.2.34","NGINX_DATA=/var/opt/jfrog/nginx"],"Entrypoint":["/entrypoint-nginx.sh"],"Volumes":{"/var/opt/jfrog/nginx":{}},"WorkingDir":"/","Labels":{"maintainer":"NGINX Docker Maintainers \u003cdocker-maint@nginx.com\u003e"},"StopSignal":"SIGTERM"},"created":"2025-09-01T13:27:37.31163212Z","history":[{"created":"2025-05-30T16:20:41Z","created_by":"ADD alpine-minirootfs-3.22.0-x86_64.tar.gz / # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-05-30T16:20:41Z","created_by":"CMD [\"/bin/sh\"]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"LABEL maintainer=NGINX Docker Maintainers \u003cdocker-maint@nginx.com\u003e","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"ENV NGINX_VERSION=1.29.0","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"ENV PKG_RELEASE=1","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"ENV DYNPKG_RELEASE=1","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"RUN /bin/sh -c set -x     \u0026\u0026 addgroup -g 101 -S nginx     \u0026\u0026 adduser -S -D -H -u 101 -h /var/cache/nginx -s /sbin/nologin -G nginx -g nginx nginx     \u0026\u0026 apkArch=\"$(cat /etc/apk/arch)\"     \u0026\u0026 nginxPackages=\"         nginx=${NGINX_VERSION}-r${PKG_RELEASE}     \"     \u0026\u0026 apk add --no-cache --virtual .checksum-deps         openssl     \u0026\u0026 case \"$apkArch\" in         x86_64|aarch64)             set -x             \u0026\u0026 KEY_SHA512=\"e09fa32f0a0eab2b879ccbbc4d0e4fb9751486eedda75e35fac65802cc9faa266425edf83e261137a2f4d16281ce2c1a5f4502930fe75154723da014214f0655\"             \u0026\u0026 wget -O /tmp/nginx_signing.rsa.pub https://nginx.org/keys/nginx_signing.rsa.pub             \u0026\u0026 if echo \"$KEY_SHA512 */tmp/nginx_signing.rsa.pub\" | sha512sum -c -; then                 echo \"key verification succeeded!\";                 mv /tmp/nginx_signing.rsa.pub /etc/apk/keys/;             else                 echo \"key verification failed!\";                 exit 1;             fi             \u0026\u0026 apk add -X \"https://nginx.org/packages/mainline/alpine/v$(egrep -o '^[0-9]+\\.[0-9]+' /etc/alpine-release)/main\" --no-cache $nginxPackages             ;;         *)             set -x             \u0026\u0026 tempDir=\"$(mktemp -d)\"             \u0026\u0026 chown nobody:nobody $tempDir             \u0026\u0026 apk add --no-cache --virtual .build-deps                 gcc                 libc-dev                 make                 openssl-dev                 pcre2-dev                 zlib-dev                 linux-headers                 bash                 alpine-sdk                 findutils                 curl             \u0026\u0026 su nobody -s /bin/sh -c \"                 export HOME=${tempDir}                 \u0026\u0026 cd ${tempDir}                 \u0026\u0026 curl -f -L -O https://github.com/nginx/pkg-oss/archive/${NGINX_VERSION}-${PKG_RELEASE}.tar.gz                 \u0026\u0026 PKGOSSCHECKSUM=\\\"400593da45fc0195a01138c0c23a06059da1c6a2e26959f2c4c95fbaf63436ff211665ef01392d2b775a0133d5b57680dabe51b840a55f82e89621e84cf651d1 *${NGINX_VERSION}-${PKG_RELEASE}.tar.gz\\\"                 \u0026\u0026 if [ \\\"\\$(openssl sha512 -r ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz)\\\" = \\\"\\$PKGOSSCHECKSUM\\\" ]; then                     echo \\\"pkg-oss tarball checksum verification succeeded!\\\";                 else                     echo \\\"pkg-oss tarball checksum verification failed!\\\";                     exit 1;                 fi                 \u0026\u0026 tar xzvf ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz                 \u0026\u0026 cd pkg-oss-${NGINX_VERSION}-${PKG_RELEASE}                 \u0026\u0026 cd alpine                 \u0026\u0026 make base                 \u0026\u0026 apk index --allow-untrusted -o ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz ${tempDir}/packages/alpine/${apkArch}/*.apk                 \u0026\u0026 abuild-sign -k ${tempDir}/.abuild/abuild-key.rsa ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz                 \"             \u0026\u0026 cp ${tempDir}/.abuild/abuild-key.rsa.pub /etc/apk/keys/             \u0026\u0026 apk del --no-network .build-deps             \u0026\u0026 apk add -X ${tempDir}/packages/alpine/ --no-cache $nginxPackages             ;;     esac     \u0026\u0026 apk del --no-network .checksum-deps     \u0026\u0026 if [ -n \"$tempDir\" ]; then rm -rf \"$tempDir\"; fi     \u0026\u0026 if [ -f \"/etc/apk/keys/abuild-key.rsa.pub\" ]; then rm -f /etc/apk/keys/abuild-key.rsa.pub; fi     \u0026\u0026 apk add --no-cache gettext-envsubst     \u0026\u0026 apk add --no-cache tzdata     \u0026\u0026 ln -sf /dev/stdout /var/log/nginx/access.log     \u0026\u0026 ln -sf /dev/stderr /var/log/nginx/error.log     \u0026\u0026 mkdir /docker-entrypoint.d # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-24T20:52:14Z","created_by":"COPY docker-entrypoint.sh / # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-24T20:52:14Z","created_by":"COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-24T20:52:14Z","created_by":"COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-24T20:52:14Z","created_by":"COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-24T20:52:14Z","created_by":"COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-24T20:52:14Z","created_by":"ENTRYPOINT [\"/docker-entrypoint.sh\"]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"EXPOSE map[80/tcp:{}]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"STOPSIGNAL SIGQUIT","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"CMD [\"nginx\" \"-g\" \"daemon off;\"]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"ENV NJS_VERSION=0.9.0","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"ENV NJS_RELEASE=1","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-24T20:52:14Z","created_by":"RUN /bin/sh -c set -x     \u0026\u0026 apkArch=\"$(cat /etc/apk/arch)\"     \u0026\u0026 nginxPackages=\"         nginx=${NGINX_VERSION}-r${PKG_RELEASE}         nginx-module-xslt=${NGINX_VERSION}-r${DYNPKG_RELEASE}         nginx-module-geoip=${NGINX_VERSION}-r${DYNPKG_RELEASE}         nginx-module-image-filter=${NGINX_VERSION}-r${DYNPKG_RELEASE}         nginx-module-njs=${NGINX_VERSION}.${NJS_VERSION}-r${NJS_RELEASE}     \"     \u0026\u0026 apk add --no-cache --virtual .checksum-deps         openssl     \u0026\u0026 case \"$apkArch\" in         x86_64|aarch64)             apk add -X \"https://nginx.org/packages/mainline/alpine/v$(egrep -o '^[0-9]+\\.[0-9]+' /etc/alpine-release)/main\" --no-cache $nginxPackages             ;;         *)             set -x             \u0026\u0026 tempDir=\"$(mktemp -d)\"             \u0026\u0026 chown nobody:nobody $tempDir             \u0026\u0026 apk add --no-cache --virtual .build-deps                 gcc                 libc-dev                 make                 openssl-dev                 pcre2-dev                 zlib-dev                 linux-headers                 libxslt-dev                 gd-dev                 geoip-dev                 libedit-dev                 bash                 alpine-sdk                 findutils                 curl             \u0026\u0026 su nobody -s /bin/sh -c \"                 export HOME=${tempDir}                 \u0026\u0026 cd ${tempDir}                 \u0026\u0026 curl -f -L -O https://github.com/nginx/pkg-oss/archive/${NGINX_VERSION}-${PKG_RELEASE}.tar.gz                 \u0026\u0026 PKGOSSCHECKSUM=\\\"400593da45fc0195a01138c0c23a06059da1c6a2e26959f2c4c95fbaf63436ff211665ef01392d2b775a0133d5b57680dabe51b840a55f82e89621e84cf651d1 *${NGINX_VERSION}-${PKG_RELEASE}.tar.gz\\\"                 \u0026\u0026 if [ \\\"\\$(openssl sha512 -r ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz)\\\" = \\\"\\$PKGOSSCHECKSUM\\\" ]; then                     echo \\\"pkg-oss tarball checksum verification succeeded!\\\";                 else                     echo \\\"pkg-oss tarball checksum verification failed!\\\";                     exit 1;                 fi                 \u0026\u0026 tar xzvf ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz                 \u0026\u0026 cd pkg-oss-${NGINX_VERSION}-${PKG_RELEASE}                 \u0026\u0026 cd alpine                 \u0026\u0026 make module-geoip module-image-filter module-njs module-xslt                 \u0026\u0026 apk index --allow-untrusted -o ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz ${tempDir}/packages/alpine/${apkArch}/*.apk                 \u0026\u0026 abuild-sign -k ${tempDir}/.abuild/abuild-key.rsa ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz                 \"             \u0026\u0026 cp ${tempDir}/.abuild/abuild-key.rsa.pub /etc/apk/keys/             \u0026\u0026 apk del --no-network .build-deps             \u0026\u0026 apk add -X ${tempDir}/packages/alpine/ --no-cache $nginxPackages             ;;     esac     \u0026\u0026 apk del --no-network .checksum-deps     \u0026\u0026 if [ -n \"$tempDir\" ]; then rm -rf \"$tempDir\"; fi     \u0026\u0026 if [ -f \"/etc/apk/keys/abuild-key.rsa.pub\" ]; then rm -f /etc/apk/keys/abuild-key.rsa.pub; fi     \u0026\u0026 apk add --no-cache curl ca-certificates # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-30T09:00:22.244783774Z","created_by":"ARG TARGETARCH=amd64","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-30T09:00:22.244783774Z","created_by":"ENV TARGETARCH=amd64 SUPERCRONIC_VERSION=0.2.34","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-06-30T09:00:22.244783774Z","created_by":"COPY Dockerfile /docker/art-nginx/ # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-30T09:00:25.357110078Z","created_by":"RUN |1 TARGETARCH=amd64 /bin/sh -c apk --no-cache add shadow \u0026\u0026     apk --no-cache add libcap \u0026\u0026     apk --no-cache add bash \u0026\u0026     apk --no-cache add logrotate \u0026\u0026     apk --no-cache add openssl \u0026\u0026     apk --no-cache add --update busybox-suid \u0026\u0026     apk --no-cache upgrade curl libcurl apk-tools \u0026\u0026     apk del nginx-module-xslt nginx-module-image-filter # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-06-30T09:00:27.91992371Z","created_by":"RUN |1 TARGETARCH=amd64 /bin/sh -c curl -L https://releases.jfrog.io/artifactory/installers/supercronic/supercronic/${SUPERCRONIC_VERSION}/supercronic-linux-$TARGETARCH -o /usr/bin/supercronic \u0026\u0026     chmod +x /usr/bin/supercronic # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:36.800926053Z","created_by":"MAINTAINER installer-dev@jfrog.com","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-09-01T13:27:36.800926053Z","created_by":"COPY functions.sh / # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:36.859452168Z","created_by":"COPY entrypoint-nginx.sh / # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:36.912577404Z","created_by":"COPY updateConf.sh / # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:36.971762121Z","created_by":"COPY artifactory-pro.conf /artifactory.conf # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:37.03713253Z","created_by":"COPY Dockerfile.nginx /docker/nginx-artifactory-pro/ # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:37.03713253Z","created_by":"ENV NGINX_DATA=/var/opt/jfrog/nginx","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-09-01T13:27:37.267122334Z","created_by":"RUN /bin/sh -c groupmod -g 107 nginx \u0026\u0026     usermod -u 104 nginx \u0026\u0026     chmod +x /entrypoint-nginx.sh /updateConf.sh \u0026\u0026     mkdir -p ${NGINX_DATA}/logs \u0026\u0026     mkdir -p ${NGINX_DATA}/conf.d \u0026\u0026     mkdir -p ${NGINX_DATA}/ssl \u0026\u0026     mkdir -p /var/cache/nginx /var/lib/nginx \u0026\u0026     rm -rf /var/log/nginx /etc/nginx/conf.d \u0026\u0026     ln -s ${NGINX_DATA}/logs /var/log/nginx \u0026\u0026     ln -s ${NGINX_DATA}/conf.d /etc/nginx/conf.d \u0026\u0026     ln -s ${NGINX_DATA}/ssl /etc/nginx/ssl \u0026\u0026     touch /var/run/nginx.pid \u0026\u0026     chown -R nginx:nginx ${NGINX_DATA} /var/lib/nginx /var/log/nginx /var/cache/nginx /var/run/nginx.pid \u0026\u0026     chmod -R go+w ${NGINX_DATA} /var/lib/nginx /var/cache/nginx /var/run/nginx.pid \u0026\u0026     ln -s /dev/stdout ${NGINX_DATA}/logs/access.log \u0026\u0026     ln -s /dev/stderr ${NGINX_DATA}/logs/error.log # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:37.31163212Z","created_by":"COPY nginx.conf /etc/nginx/nginx.conf # buildkit","comment":"buildkit.dockerfile.v0"},{"created":"2025-09-01T13:27:37.31163212Z","created_by":"USER nginx","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-09-01T13:27:37.31163212Z","created_by":"VOLUME [/var/opt/jfrog/nginx]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-09-01T13:27:37.31163212Z","created_by":"EXPOSE map[8080/tcp:{} 8443/tcp:{}]","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-09-01T13:27:37.31163212Z","created_by":"STOPSIGNAL SIGTERM","comment":"buildkit.dockerfile.v0","empty_layer":true},{"created":"2025-09-01T13:27:37.31163212Z","created_by":"ENTRYPOINT [\"/entrypoint-nginx.sh\"]","comment":"buildkit.dockerfile.v0","empty_layer":true}],"os":"linux","rootfs":{"type":"layers","diff_ids":["sha256:fd2758d7a50e2b78d275ee7d1c218489f2439084449d895fa17eede6c61ab2c4","sha256:7b97c641cb43046a19147210c8310fb3e945511d823ff25d6a2a8cdeb306cf84","sha256:bbbd2d1aea899787ba39ca46bff9ec748fe793c6041d2e5cc333695e06497513","sha256:2aaacff968bce006201fc0e4294c4e6bb303760c1cf658329a8a73fa72f99f80","sha256:36acb230000e7410fa30f2fcc36271edfd7b1ee55c61013057db3b6d94d433c4","sha256:4f313ed230a0d606701fd96a6e0934f24739a31f1bad8d06d42aa0497c378752","sha256:bd66bdd2f47fe79516d2b2af823745b8c31ee3de775f210e6a3f196248445284","sha256:640e06e412a990ebeb0f48103529c16fff8f33a9595a268ad84bbe45adf28649","sha256:424100379fc0ec0ba6d386406d1c710b9717eb384b51550c7b181f2c460c85fc","sha256:e08b7971f52008d8e346b671a875e63a605272c9b3314c67b0631208bef69dc1","sha256:c277062739c29a82bbef28934833f37fa39c4768ad6cda9995f2324a1003907a","sha256:225f0cd5c19cda6867ff738d523a2e045c410c0de105c67cec8975098a3412d2","sha256:b00a2ec3dfb0e135dd5dd93a21b14414acd9a79291e03bab54169b9f58a9b643","sha256:38877ff5778486ee1300f2817fb492240d26600ab897235a3396c93059b295c3","sha256:66c2fbd5eae56402866278046728f81a932e7a38504a326bc09b00fc1ceeef66","sha256:5af506ddd9ce24ebd4ba5cb98e0083fc8037d9508941f55f5eed97ef516a0921","sha256:0442d9adfbcb6fe0f93238148852d74330972c839fbc40b0784b3df31dfd2ca8","sha256:38a2ebaf305fcb8c5fdb918b3399015cd4446fa8da40b2bf690744f11148e342"]}}