entscheidomat (330847308d0e13fb3b10d3c3510721b67f787099)
Published 2026-09-13 10:59:21 +00:00 by Hauke
Installation
docker pull git.hauke-werkstatt.de/hauke/entscheidomat:330847308d0e13fb3b10d3c3510721b67f787099sha256:3e611b048e64e038f058e70cff96da20f0566d5d4e8b8bde97f453b3768cfdeeAbout this package
Glücksrad, Würfel und Münze – statische Web-App, ausgeliefert von nginx ohne Root-Rechte
Image layers
| ADD alpine-minirootfs-3.24.1-aarch64.tar.gz / # buildkit |
| CMD ["/bin/sh"] |
| LABEL maintainer=NGINX Docker Maintainers <docker-maint@nginx.com> |
| ENV NGINX_VERSION=1.30.4 |
| 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/a8a4da8b4916b7adc193d3694cddeb4e6d771e8f.tar.gz && PKGOSSCHECKSUM=\"53182fa1aa214ed690c8729695e9f6cad71489efa99b016e57314a29b9f0f3f42082819977dfc5569d800d693c9849fc1b48719fa35692e88de9807e6ab6e976 *a8a4da8b4916b7adc193d3694cddeb4e6d771e8f.tar.gz\" && if [ \"\$(openssl sha512 -r a8a4da8b4916b7adc193d3694cddeb4e6d771e8f.tar.gz)\" = \"\$PKGOSSCHECKSUM\" ]; then echo \"pkg-oss tarball checksum verification succeeded!\"; else echo \"pkg-oss tarball checksum verification failed!\"; exit 1; fi && tar xzvf a8a4da8b4916b7adc193d3694cddeb4e6d771e8f.tar.gz && cd pkg-oss-a8a4da8b4916b7adc193d3694cddeb4e6d771e8f && 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 NGINX_IMAGE=docker.io/nginxinc/nginx-unprivileged:1.30-alpine-slim |
| ARG VERSION=1.0.0 |
| ARG REVISION=330847308d0e13fb3b10d3c3510721b67f787099 |
| ARG CREATED=2026-09-13T10:59:01Z |
| ARG SOURCE=https://git.hauke-werkstatt.de/Hauke/Entscheidomat |
| LABEL org.opencontainers.image.title=Entscheidomat org.opencontainers.image.description=Glücksrad, Würfel und Münze – statische Web-App, ausgeliefert von nginx ohne Root-Rechte org.opencontainers.image.version=1.0.0 org.opencontainers.image.revision=330847308d0e13fb3b10d3c3510721b67f787099 org.opencontainers.image.created=2026-09-13T10:59:01Z org.opencontainers.image.source=https://git.hauke-werkstatt.de/Hauke/Entscheidomat org.opencontainers.image.url=https://git.hauke-werkstatt.de/Hauke/Entscheidomat org.opencontainers.image.licenses=NOASSERTION org.opencontainers.image.base.name=docker.io/nginxinc/nginx-unprivileged:1.30-alpine-slim maintainer= |
| USER root |
| RUN |5 NGINX_IMAGE=docker.io/nginxinc/nginx-unprivileged:1.30-alpine-slim VERSION=1.0.0 REVISION=330847308d0e13fb3b10d3c3510721b67f787099 CREATED=2026-09-13T10:59:01Z SOURCE=https://git.hauke-werkstatt.de/Hauke/Entscheidomat /bin/sh -c rm -rf /usr/share/nginx/html/* /etc/nginx/conf.d /docker-entrypoint.d/* && chown -R 0:0 /etc/nginx && chmod -R go-w /etc/nginx # buildkit |
| COPY /out/conf/ /etc/nginx/ # buildkit |
| COPY /out/html/ /usr/share/nginx/html/ # buildkit |
| COPY /out/errors/ /usr/share/nginx/errors/ # buildkit |
| USER 101 |
| RUN |5 NGINX_IMAGE=docker.io/nginxinc/nginx-unprivileged:1.30-alpine-slim VERSION=1.0.0 REVISION=330847308d0e13fb3b10d3c3510721b67f787099 CREATED=2026-09-13T10:59:01Z SOURCE=https://git.hauke-werkstatt.de/Hauke/Entscheidomat /bin/sh -c nginx -t -q && rm -rf /tmp/* # buildkit |
| ENV NGINX_ENTRYPOINT_QUIET_LOGS=1 |
| EXPOSE [8080/tcp] |
| HEALTHCHECK {Test:[CMD wget -q -T 2 -O /dev/null http://127.0.0.1:8080/healthz] Interval:30s Timeout:3s StartPeriod:10s StartInterval:0s Retries:3} |
| STOPSIGNAL SIGQUIT |
| CMD ["nginx" "-g" "daemon off;"] |
Labels
| Key | Value |
|---|---|
| maintainer | |
| org.opencontainers.image.base.name | docker.io/nginxinc/nginx-unprivileged:1.30-alpine-slim |
| org.opencontainers.image.created | 2026-09-13T10:59:01Z |
| org.opencontainers.image.description | Glücksrad, Würfel und Münze – statische Web-App, ausgeliefert von nginx ohne Root-Rechte |
| org.opencontainers.image.licenses | NOASSERTION |
| org.opencontainers.image.revision | 330847308d0e13fb3b10d3c3510721b67f787099 |
| org.opencontainers.image.source | https://git.hauke-werkstatt.de/Hauke/Entscheidomat |
| org.opencontainers.image.title | Entscheidomat |
| org.opencontainers.image.url | https://git.hauke-werkstatt.de/Hauke/Entscheidomat |
| org.opencontainers.image.version | 1.0.0 |
Details
2026-09-13 10:59:21 +00:00
Versions (6)
View all
Container
0
OCI / Docker
linux/arm64
NOASSERTION
8.6 MiB
main
2026-09-17
latest
2026-09-17
b43db40ce6687ff8786ccfdc7c17ae3782e4b08b
2026-09-17
babc97f4290e1ff0a0fa8ad5b370172185604e6f
2026-09-14
0980c877b54d045c95b5a1100765d982d8e7184f
2026-09-13