3HL-SCORE

alex/frontend (latest)

Published 2026-03-04 06:26:38 +00:00 by 3HL-Admin

Installation

docker pull git.3halves-labs.com/3hl-score/alex/frontend:latest
sha256:d0bb934b2120131890813604de172c3270eb894641220b1adfb39b3f3ea15388
sha256:07ac5fd51d0746110e000ba43988faa609fc8c3bf0a3f46b69033b6ee7505b52
sha256:640c66d64e1d66c84a4473c59e08263a24248fd0665dd7fa59044077b2db1073
sha256:c23eaa289e2236ca0c3c4b9bc87ef943181dd0fa6ee71daa19364462279b8511
sha256:58a290e79febce3473e03303264eeaf7c3a74e389d2fdf8f3cf0eed20f615699
sha256:c9d3348c3c4ad1bbdaad788276f9c4ea1d49826faf76219c9604e9d503ffaffa
sha256:b272841e5cf0cf6e28437f8eaed7cc56c92ea291a5b982fff295aff33cd50875
sha256:b8754663cfa5e1e25b37ec4472159824a9eaa0c66268d949fc5477b385fd9401
sha256:3992ec4e84f6d0befcbee65713cfd28e569d8cd0774c6645aa625c3c8f03d7d4
sha256:6d448b037240258b83f2637afee4b11903e33100d98db43f26549f0c5e4608c1
sha256:b07cd54ec0f7b297598b4424799c599b234e7c6941ec91c1ad48137764717ea4
sha256:d620c25add7532427ca4795b91e8cce13ffa374f2cd5a1f87a4d4aa505f617ed
sha256:5017c55f5f3150ab34c6fec431f99ced1d30ad0862f29796d361e2c175877af5
sha256:0437971b0d959de5825e99c6da07f710ad6b1a7f77db65f20ac07d2dca78fd76
sha256:800de183166efeef1cee26bb43a17a94b81211d924e36df0984a9b37796d7301
sha256:9b2d3471eb68f190435151f3e67f303e909e3f7ea3e5eae1ff3c978c2d0f8c0f
sha256:535f32901979e0d88a495865101b15d33dc438347efa776df2dbdd9e50e440df
sha256:4a656eb1fe24a1d6b5dd04c455a640aaafedde06b39c50821b7a0d577426d1f7
sha256:f0469c18fae0e3a23d40cb602ec351c6c7d38b978b3f560c61dfc21d8f4ac594
sha256:83cb6c8cf7bd895b2dafed9b39a83c84218322bc9439a77f3e316c466862e21c
sha256:bcd306e21850406f4eb03c913c89cb19cd6354de29540ba3c6cec5acce9c0c1c
sha256:54fff74ae51fb32c7f7d0402e1ae3c7fa53e480d007cf19756642fa100584eca
sha256:ea0082921aebd3ed78f0626fb672e46905b56aceae794abdffcd59ba78855b5f
sha256:8f0ea0f15990196dd36d062061f16d43a3ae4e0646324b3b04805bb0bd18be17
sha256:b263c5a55198848e3235bf3bbb85776bff76d7a4331c463dae72fcefa09a02f4
sha256:c7730f80ff685084ce3eadee88de2adc6837f06fa8337dd425efec48a689fbee
sha256:98ba31fb25e98cf82e00c4353a4d73746bada4c6748581d469f58d497049d3ef
sha256:02fa0009a0b3a841f0f5251e503ba2fbf4409d8640bb22ab20ef066a24ddc281
sha256:56a190e0f3d063361f6b7f7293331ed70d1205a717bc84c6230fea1fea8eb502
sha256:6d4c2b0ea283ca9fcdb510dee9390b970771186817fa617d756b0e6bc8af9eab
sha256:923815a33c34a90fe981593bbdfe5ed8762a807511936bb40f500dec3057118d
sha256:e8aef20b775aa874856e5418f1caff32bd56bc825f4cb028e2e186bfde56c00c
sha256:4400c00e03ac9a4fa7c5b71397a580aaea196b9e99d75d3f7d8ba53a613f56e7
sha256:133eba1f3853c000f99724363ee427f14198e3c4deeffd0d13da6d947ad6021d
sha256:6d9a39977b59eacb778cefbe4bbdcb66e565de3b540daa99f64763db55be683f
sha256:8af668f7ee3af05075c73615f6366a215cefb0503a381e05982857eaff8d2bea
sha256:79f6ac29d3a8a562d5f1950b562011a48965234379a0332c6cc9b35a5945cf56
sha256:935103321b65b9efd2b6a72bc2985735216bc53c53b2dfa58299e0b0f30c0135
sha256:56e231d836f12c1a265b6f0958105f2cdb50a0809d48134a9ef1fa800ec486d9
sha256:deb5e0ae3b83de814324f922df49ac93ca8049de4246968c2668f4ca5bb5c958
sha256:2a20265fcd5c20a63202077f01c9184661063fa5dc2dfbc4d4968ee8ce8e0fff
sha256:bd82c8e1d2317ab1443c868e7690bf281e1124c55b5128506a8a3409b4b199af
sha256:83ae7fa6ed063b1bf5a1e740c7879f6e7146c9dcfd49fc85ca83ab42937de933
sha256:9f5153ad5ab6e3ec0b13aa21c5f83a9aefc0a3b2ac94aa7bf19f0d25479d0523
sha256:39ae1285498321aee5ebb5daa57065e9b540829f8fe633b974d218004c2ef27a
sha256:e9e326512936b7804997670cdffe478889c923f78b924a03d93bd6d4ebcbbe9e
sha256:a051dcde33b983b61ad5d19ff92880c13fc754e89f58fcd9d4e2169fb4026034
sha256:a1ddc9dbad1cfcef6087c58de13dd6fbe71b199dd88a50c7d183c356b30ac5c7
sha256:40d0a909cd63f36507be396ab8cf8d214adc008f80be4a9162006e27e394617e
sha256:898ea94138723f6f2b6dfbf9fff3452acc2859a814729d5f02ed528c10d684a1
sha256:6812947e2d69e468d32d2bb18021d7ca1ba5d4f78fdbc23d4b68c3d9bb21dacc
sha256:f62875553d210a7a86613ad0f9dc2463cf4510906eae29d949e555ed938570cd
sha256:5a8453f38028466da6e7d72374f167c98d62c31c036505b427192d94b1efb04c
sha256:1e9976f02232f3f3a38b25108adea357414e136b084048833f69dcfe9a0822e6
sha256:17157ec003acc99379a5c01b58ef78a92dac2d38040c350a59cf1ca4d8856019
sha256:2541a119f13a7d1d93707edf8914c8ea1dd76bf8a373b5f55ed6100668897aa3
sha256:ed1c9ea6c669c48b0a1e98e52d7f31807016aeb04adc628b8b0a036200c48048
sha256:6a4cf169fcdc1a4260e4f0a6cc82b5794dc370b775f2a54c303aeec44347c90f
sha256:41265eb7664b575a8e6dc85b431f00dcf150924fa5194ce049ac01c882a1d93e
sha256:9ba639fc9c21fdff2ffec9f65d05612aff2791d6c8e1dd6cd8e5541aa6bb07c9
sha256:58b13d1dc7fb4adbfce947724383fcfa161b91f329b056a3862e3add72e7eb59
sha256:b769db9bce836217179faf2628855338874d9a159b4aabe6ee629763029758b2
sha256:87bf553e4850c21ae159601cf81ccddbab13edae2285fac412c9fe3743ba8741
sha256:455753003ada4b3838b8bb12264ac8d482a24818546d0276bfd7846c75b0aaff
sha256:5876169c11f18bd9a3a4755cf8e31e6c5977c107bfe6a08d80d71e49067c0b2c
sha256:f1ae55e55b4187e0c48f54f193683b25029eb4364bbf9ac0342288c06cfbfd73
sha256:c4cbbadbacbf5ab31caa25d184b0e661670854c7ff3a790c4b5fadbb15988021
sha256:2fa2c75cbf7ef8b34df42aafcccbfc0aa73a986d55ff66d4ca2ca675de337d35
sha256:767ddb6b1fa1a8c861e6ffe20212c8996fa0563dc61ac9af1b4e6669559d78b4
sha256:80a4b5a2e186ffbab1da6177fc7d0c563f2c42f1a2f548ac839ac90f615631a7
sha256:da8276fb6255f10da9d4c246e40a8c975807e38e5358db5de0d43c73633b8a0c
sha256:364080214c77a800100f670773ba817a10e1fef1210f1dbb8b525be668ae45ff
sha256:141b548a8d7ff7d0d9c18b337059e00d72dd385d8cf4a15979c16e45968e6373
sha256:3f250313372ab7c7e6132aed34066122224bc67f570700665a15b9b5f73ad98d
sha256:46b8f8cc7dda36c016f95f15f771079e1ea86a01ae7a9ec8ae6f921845997059
sha256:3ef7cb6312ea636ff71a3a81660172bed3ddeb7dcc2a7b4f9d59e0ee9779bfc3
sha256:f3625b7dab3f378cfe9c4b94de08b2bfa634756d33be91fe15273d8ede802144
sha256:641eedd432240567f19d90bb735d5d7b71d89138994e0a7f2bb5d68ecb7da015
sha256:916b8b2f36e9322ab70b8f88d3740278d26b5f782fb8342e360df1d5e258b217
sha256:1c1687fce1348dad19cf8e551521d022f0137b4d336142689bb50f5658772e45
sha256:efa03ba612015069dcfd6efbdb3269ba9fe5ff68d8157276153c8b06e2cddb5e
sha256:753078b0dd54c791851e3d6205e7481996b51231eb52c2fa41e32fb48011a0e9
sha256:98175fff1d31076ab501a7c59451503248f81f6aca8e46dfd15db3e29be38b5c
sha256:5a7e22f936c13a645195f2da2967246ed791a050ff0bc634539d6663e8da59a8
sha256:1af40901e8ce3f97f9e5306e7d1b967e22148e759aff1488ca9f01e4747a5e1e
sha256:f3a968ad3c64ffc51b01ed155438699e6dd42dd41ae4701856c8d358eed8bc06
sha256:f078fa0bcff9659a37ee0f24b8cce9b1935809902b9e36d81ca538c8ce5c9189
sha256:dce43e099befb92331e81746429984ccf2a822c83dc8c44dfadfd3a9dbcb36b6
sha256:06dcb94db68b5ac9e9ee2fa6d505d2bfa5b71c45350b21008db6cf091070618e
sha256:437cf19f6bda9d325cf4eb33f190c2dbdf0538eda72b7308b07a0e1ace904daa
sha256:cdfaae380e4c7f3c2914809209a337d3e1d995b7e8abbd0251bde9b68bdaee58
sha256:c983809f9098e4a94a827576e276ef1e80539428b2c83364e1c9ff9f8a5d90b5
sha256:6ca75e791ba9c6cd3e629c29dc2d1198b57f19dd0b3c582b0576a82c78f68033

Image Layers

ADD alpine-minirootfs-3.23.3-x86_64.tar.gz / # buildkit
CMD ["/bin/sh"]
LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com>
ENV NGINX_VERSION=1.29.5
ENV PKG_RELEASE=1
ENV DYNPKG_RELEASE=1
RUN /bin/sh -c set -x && addgroup -g 101 -S nginx && adduser -S -D -H -u 101 -h /var/cache/nginx -s /sbin/nologin -G nginx -g nginx nginx && apkArch="$(cat /etc/apk/arch)" && nginxPackages=" nginx=${NGINX_VERSION}-r${PKG_RELEASE} " && apk add --no-cache --virtual .checksum-deps openssl && case "$apkArch" in x86_64|aarch64) set -x && KEY_SHA512="e09fa32f0a0eab2b879ccbbc4d0e4fb9751486eedda75e35fac65802cc9faa266425edf83e261137a2f4d16281ce2c1a5f4502930fe75154723da014214f0655" && wget -O /tmp/nginx_signing.rsa.pub https://nginx.org/keys/nginx_signing.rsa.pub && 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 && 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 && tempDir="$(mktemp -d)" && chown nobody:nobody $tempDir && apk add --no-cache --virtual .build-deps gcc libc-dev make openssl-dev pcre2-dev zlib-dev linux-headers bash alpine-sdk findutils curl && su nobody -s /bin/sh -c " export HOME=${tempDir} && cd ${tempDir} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && PKGOSSCHECKSUM=\"b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${NGINX_VERSION}-${PKG_RELEASE}.tar.gz\" && 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 && tar xzvf ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && cd pkg-oss-${NGINX_VERSION}-${PKG_RELEASE} && cd alpine && make base && apk index --allow-untrusted -o ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz ${tempDir}/packages/alpine/${apkArch}/*.apk && abuild-sign -k ${tempDir}/.abuild/abuild-key.rsa ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz " && cp ${tempDir}/.abuild/abuild-key.rsa.pub /etc/apk/keys/ && apk del --no-network .build-deps && apk add -X ${tempDir}/packages/alpine/ --no-cache $nginxPackages ;; esac && apk del --no-network .checksum-deps && if [ -n "$tempDir" ]; then rm -rf "$tempDir"; fi && if [ -f "/etc/apk/keys/abuild-key.rsa.pub" ]; then rm -f /etc/apk/keys/abuild-key.rsa.pub; fi && apk add --no-cache gettext-envsubst && apk add --no-cache tzdata && ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log && mkdir /docker-entrypoint.d # buildkit
COPY docker-entrypoint.sh / # buildkit
COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d # buildkit
COPY 15-local-resolvers.envsh /docker-entrypoint.d # buildkit
COPY 20-envsubst-on-templates.sh /docker-entrypoint.d # buildkit
COPY 30-tune-worker-processes.sh /docker-entrypoint.d # buildkit
ENTRYPOINT ["/docker-entrypoint.sh"]
EXPOSE map[80/tcp:{}]
STOPSIGNAL SIGQUIT
CMD ["nginx" "-g" "daemon off;"]
ENV NJS_VERSION=0.9.5
ENV NJS_RELEASE=1
ENV ACME_VERSION=0.3.1
RUN /bin/sh -c set -x && apkArch="$(cat /etc/apk/arch)" && 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} nginx-module-acme=${NGINX_VERSION}.${ACME_VERSION}-r${PKG_RELEASE} " && apk add --no-cache --virtual .checksum-deps openssl && 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 && tempDir="$(mktemp -d)" && chown nobody:nobody $tempDir && 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 cargo clang-libclang && su nobody -s /bin/sh -c " export HOME=${tempDir} && cd ${tempDir} && curl -f -L -O https://github.com/nginx/pkg-oss/archive/${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && PKGOSSCHECKSUM=\"b8584eaa97130ba7743dfbb2a10f665d64cb54b864e2038d0fd298d24682fc05eb4472738430b15862dabc6f374917f1b9889117051a852d36d0a6c8bc898921 *${NGINX_VERSION}-${PKG_RELEASE}.tar.gz\" && 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 && tar xzvf ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && cd pkg-oss-${NGINX_VERSION}-${PKG_RELEASE} && cd alpine && export BUILDTARGET=\"module-geoip module-image-filter module-njs module-xslt module-acme\" && if [ \"\$(apk --print-arch)\" = \"armhf\" ]; then BUILDTARGET=\"\$( echo \$BUILDTARGET | sed 's,module-acme,,' )\"; fi && make \$BUILDTARGET && apk index --allow-untrusted -o ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz ${tempDir}/packages/alpine/${apkArch}/*.apk && abuild-sign -k ${tempDir}/.abuild/abuild-key.rsa ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz " && cp ${tempDir}/.abuild/abuild-key.rsa.pub /etc/apk/keys/ && apk del --no-network .build-deps && if [ "$apkArch" = "armhf" ]; then nginxPackages="$( echo $nginxPackages | sed 's,nginx-module-acme=.*,,')"; fi && apk add -X ${tempDir}/packages/alpine/ --no-cache $nginxPackages ;; esac && apk del --no-network .checksum-deps && if [ -n "$tempDir" ]; then rm -rf "$tempDir"; fi && if [ -f "/etc/apk/keys/abuild-key.rsa.pub" ]; then rm -f /etc/apk/keys/abuild-key.rsa.pub; fi && apk add --no-cache curl ca-certificates # buildkit
COPY docker/prod/nginx.conf /etc/nginx/nginx.conf # buildkit
COPY /app/dist /usr/share/nginx/html # buildkit
COPY /app/public/robots.txt /usr/share/nginx/html/ # buildkit
COPY /app/public/sitemap.xml /usr/share/nginx/html/ # buildkit
COPY /app/public/favicon.ico /usr/share/nginx/html/ # buildkit
RUN /bin/sh -c chown -R nginx:nginx /usr/share/nginx/html && chown -R nginx:nginx /var/cache/nginx && chown -R nginx:nginx /var/log/nginx && touch /var/run/nginx.pid && chown -R nginx:nginx /var/run/nginx.pid # buildkit
EXPOSE &{[{{60 0} {60 0}}] 0xc030bff6c0}
HEALTHCHECK &{["CMD-SHELL" "wget --no-verbose --tries=1 --spider http://localhost/health || exit 1"] "30s" "10s" "5s" "0s" '\x03'}
USER nginx
CMD ["nginx" "-g" "daemon off;"]

Labels

Key Value
maintainer NGINX Docker Maintainers <docker-maint@nginx.com>
Details
Container
2026-03-04 06:26:38 +00:00
71
OCI / Docker
linux/amd64
381 MiB
Versions (94) View all
v1.12.33 2026-04-29
v1.12.32 2026-04-29
v1.12.31 2026-04-29
v1.12.30 2026-04-28
v1.12.29 2026-04-21