codedoodles-assets (candidate-50c993d7196745f67fd1cd6ab8b0b379a54bee9d-36631152387-1)
Published 2026-09-29 16:16:46 -05:00 by treyturner
Installation
docker pull forgejo.treyturner.info/treyturner/codedoodles-assets:candidate-50c993d7196745f67fd1cd6ab8b0b379a54bee9d-36631152387-1sha256:7b6da2112f78b81fc5a9c4342a81cbaa2f8ef8c4b2bab90ee5c231ac2415a78cAbout this package
Unprivileged NGINX Dockerfiles
Image layers
| ADD alpine-minirootfs-3.24.2-x86_64.tar.gz / # buildkit |
| CMD ["/bin/sh"] |
| LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com> |
| ENV NGINX_VERSION=1.30.5 |
| ENV PKG_RELEASE=1 |
| ENV DYNPKG_RELEASE=1 |
| ARG UID=101 |
| ARG GID=101 |
| RUN |2 UID=101 GID=101 /bin/sh -c set -x && addgroup -g $GID -S nginx || true && adduser -S -D -H -u $UID -h /var/cache/nginx -s /sbin/nologin -G nginx -g nginx nginx || true && 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 && DEPS=$(apk query --summarize depends --recursive --no-cache --repository "@nginxorg https://nginx.org/packages/alpine/v$(egrep -o '^[0-9]+\.[0-9]+' /etc/alpine-release)/main" ${nginxPackages/=/@nginxorg=}) && apk add --no-cache $DEPS && apk add --repositories-file /dev/null -X "https://nginx.org/packages/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=\"feaa7c9e587e59a01e229c2396433a9f0bccd6ce381afae9311b7496d1c2b53f93b2b0b2adece8f76fa06b92ca6b6a706103ef2c0a26e00afe82dfcdf8135a23 *${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 && DEPS=$(apk query --summarize depends --recursive --no-cache --repository "@nginxorg ${tempDir}/packages/alpine/" ${nginxPackages/=/@nginxorg=}) && apk add --no-cache $DEPS && apk add --repositories-file /dev/null -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 |
| RUN |2 UID=101 GID=101 /bin/sh -c sed -i 's,listen 80;,listen 8080;,' /etc/nginx/conf.d/default.conf && sed -i '/user nginx;/d' /etc/nginx/nginx.conf && sed -i 's,\(/var\)\{0\,1\}/run/nginx.pid,/tmp/nginx.pid,' /etc/nginx/nginx.conf && sed -i "/^http {/a \ proxy_temp_path /tmp/proxy_temp;\n client_body_temp_path /tmp/client_temp;\n fastcgi_temp_path /tmp/fastcgi_temp;\n uwsgi_temp_path /tmp/uwsgi_temp;\n scgi_temp_path /tmp/scgi_temp;\n" /etc/nginx/nginx.conf && chown -R $UID:0 /var/cache/nginx && chmod -R g+w /var/cache/nginx && chown -R $UID:0 /etc/nginx && chmod -R g+w /etc/nginx # buildkit |
| 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 [8080/tcp] |
| STOPSIGNAL SIGQUIT |
| USER 101 |
| CMD ["nginx" "-g" "daemon off;"] |
| ARG VCS_REF |
| ARG SOURCE_DATE_EPOCH |
| LABEL org.opencontainers.image.title=codedoodles-assets org.opencontainers.image.source=https://github.com/treyturner/codedoodl.es-doodles org.opencontainers.image.revision=50c993d7196745f67fd1cd6ab8b0b379a54bee9d |
| COPY container/nginx.conf /etc/nginx/nginx.conf # buildkit |
| COPY /prepared/1790673273/ /srv/artwork/ # buildkit |
| COPY /inventory.json /opt/codedoodles/inventory.json # buildkit |
| USER 101:101 |
| EXPOSE map[8080/tcp:{}] |
| HEALTHCHECK &{["CMD-SHELL" "wget -q -O /dev/null http://127.0.0.1:8080/health || exit 1"] "15s" "3s" "5s" "0s" '\x03'} |
| ENTRYPOINT ["nginx"] |
| CMD ["-g" "daemon off;"] |
Labels
| Key | Value |
|---|---|
| maintainer | NGINX Docker Maintainers <docker-maint@nginx.com> |
| org.opencontainers.image.created | 2026-09-28T00:06:56.004Z |
| org.opencontainers.image.description | Unprivileged NGINX Dockerfiles |
| org.opencontainers.image.licenses | Apache-2.0 |
| org.opencontainers.image.revision | 50c993d7196745f67fd1cd6ab8b0b379a54bee9d |
| org.opencontainers.image.source | https://github.com/treyturner/codedoodl.es-doodles |
| org.opencontainers.image.title | codedoodles-assets |
| org.opencontainers.image.url | https://github.com/nginx/docker-nginx-unprivileged |
| org.opencontainers.image.version | 1.30.5-alpine-slim |