From 3d5a888708f0a239388bc33a6da91edb7c8bf0b7 Mon Sep 17 00:00:00 2001 From: Mike Conrad Date: Mon, 9 Jun 2025 16:17:03 -0400 Subject: [PATCH] Add proper ignore files --- examples/react-app/.gitignore | 3 + examples/react-app/slim.report.json | 556 ---------------------------- 2 files changed, 3 insertions(+), 556 deletions(-) create mode 100644 examples/react-app/.gitignore delete mode 100644 examples/react-app/slim.report.json diff --git a/examples/react-app/.gitignore b/examples/react-app/.gitignore new file mode 100644 index 0000000..94bfd91 --- /dev/null +++ b/examples/react-app/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +dist/ +slim.report.json diff --git a/examples/react-app/slim.report.json b/examples/react-app/slim.report.json deleted file mode 100644 index f264f4b..0000000 --- a/examples/react-app/slim.report.json +++ /dev/null @@ -1,556 +0,0 @@ -{ - "document": "doc.report.command", - "version": "ov/command/slim/1.1", - "engine": "linux/amd64|ALP|x.1.42.2|29e62e7836de7b1004607c51c502537ffe1969f0|2025-01-16_07:48:54AM|x", - "containerized": false, - "host_distro": { - "name": "Pop!_OS", - "version": "22.04", - "display_name": "Pop!_OS 22.04 LTS" - }, - "type": "slim", - "state": "done", - "target_reference": "react", - "system": { - "type": "Linux", - "release": "6.12.10-76061203-generic", - "distro": { - "name": "Alpine Linux", - "version": "3.21.3", - "display_name": "Alpine Linux v3.21" - } - }, - "source_image": { - "identity": { - "id": "sha256:12e558bf38a2d45aeb557f872b631745db21f836ef3477aa191260af5cbb49c3", - "tags": [ - "latest" - ], - "names": [ - "react:latest" - ] - }, - "size": 48561999, - "size_human": "49 MB", - "create_time": "2025-06-08T15:25:03Z", - "runtime_name": "docker", - "architecture": "amd64", - "exposed_ports": [ - "80/tcp" - ], - "os": "linux", - "labels": { - "maintainer": "NGINX Docker Maintainers " - }, - "env_vars": [ - "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", - "NGINX_VERSION=1.27.5", - "PKG_RELEASE=1", - "DYNPKG_RELEASE=1", - "NJS_VERSION=0.8.10", - "NJS_RELEASE=1" - ], - "container_entry": { - "exe_path": "" - } - }, - "minified_image_size": 9540708, - "minified_image_size_human": "9.5 MB", - "minified_image": "react:slim", - "minified_image_id": "sha256:83d848d51846cf917891131b875372b7ee75d97f80bd726d6f45e2869c94791f", - "minified_image_digest": "sha256:bdcf8a99c0c92bde711e50642d94c852d541b633317ed9045b5a6b5eedf1360d", - "minified_image_has_data": true, - "minified_by": 5.089978542472949, - "artifact_location": "/tmp/mint-state/.mint-state/images/12e558bf38a2d45aeb557f872b631745db21f836ef3477aa191260af5cbb49c3/artifacts", - "container_report_name": "creport.json", - "seccomp_profile_name": "react-seccomp.json", - "apparmor_profile_name": "react-apparmor-profile", - "image_stack": [ - { - "is_top_image": true, - "id": "sha256:12e558bf38a2d45aeb557f872b631745db21f836ef3477aa191260af5cbb49c3", - "full_name": "react:latest", - "repo_name": "react", - "version_tag": "latest", - "raw_tags": [ - "react:latest" - ], - "create_time": "2025-06-08T15:25:03Z", - "new_size": 48561999, - "new_size_human": "49 MB", - "instructions": [ - { - "type": "ADD", - "time": "2025-02-14T03:28:36Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 7834312, - "size_human": "7.8 MB", - "params": "alpine-minirootfs-3.21.3-x86_64.tar.gz /", - "command_snippet": "ADD alpine-minirootfs-3.21.3-x86_64.tar.gz /", - "command_all": "ADD alpine-minirootfs-3.21.3-x86_64.tar.gz /", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-02-13T22:15:00-05:00", - "inst_set_time_index": 0, - "inst_set_time_reverse_index": 2 - }, - { - "type": "CMD", - "time": "2025-02-14T03:28:36Z", - "is_nop": false, - "is_exec_form": true, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "[\"/bin/sh\"]\n", - "command_snippet": "CMD [\"/bin/sh\"]\n", - "command_all": "CMD [\"/bin/sh\"]\n", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-02-13T22:15:00-05:00", - "inst_set_time_index": 0, - "inst_set_time_reverse_index": 2 - }, - { - "type": "LABEL", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "maintainer=NGINX Docker Maintainers ", - "command_snippet": "LABEL maintainer=NGINX Docker Maintainers ", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "ENV", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "NGINX_VERSION=1.27.5", - "command_snippet": "ENV NGINX_VERSION=1.27.5", - "command_all": "ENV NGINX_VERSION=1.27.5", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "ENV", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "PKG_RELEASE=1", - "command_snippet": "ENV PKG_RELEASE=1", - "command_all": "ENV PKG_RELEASE=1", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "ENV", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "DYNPKG_RELEASE=1", - "command_snippet": "ENV DYNPKG_RELEASE=1", - "command_all": "ENV DYNPKG_RELEASE=1", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "RUN", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 4051586, - "size_human": "4.1 MB", - "command_snippet": "RUN set -x && \\\n\taddgroup -g 101 -S nginx &&...", - "command_all": "RUN set -x && \\\n\taddgroup -g 101 -S nginx && \\\n\tadduser -S -D -H -u 101 -h /var/cache/nginx -s /sbin/nologin -G nginx -g nginx nginx && \\\n\tapkArch=\"$(cat /etc/apk/arch)\" && \\\n\tnginxPackages=\" nginx=${NGINX_VERSION}-r${PKG_RELEASE} \" && \\\n\tapk add --no-cache --virtual .checksum-deps openssl && \\\n\tcase \"$apkArch\" in x86_64|aarch64) set -x && \\\n\tKEY_SHA512=\"e09fa32f0a0eab2b879ccbbc4d0e4fb9751486eedda75e35fac65802cc9faa266425edf83e261137a2f4d16281ce2c1a5f4502930fe75154723da014214f0655\" && \\\n\twget -O /tmp/nginx_signing.rsa.pub https://nginx.org/keys/nginx_signing.rsa.pub && \\\n\tif 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 && \\\n\tapk add -X \"https://nginx.org/packages/mainline/alpine/v$(egrep -o '^[0-9]+\\.[0-9]+' /etc/alpine-release)/main\" --no-cache $nginxPackages ;; *) set -x && \\\n\ttempDir=\"$(mktemp -d)\" && \\\n\tchown nobody:nobody $tempDir && \\\n\tapk add --no-cache --virtual .build-deps gcc libc-dev make openssl-dev pcre2-dev zlib-dev linux-headers bash alpine-sdk findutils curl && \\\n\tsu nobody -s /bin/sh -c \" export HOME=${tempDir} && \\\n\tcd ${tempDir} && \\\n\tcurl -f -L -O https://github.com/nginx/pkg-oss/archive/${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && \\\n\tPKGOSSCHECKSUM=\\\"c773d98b567bd585c17f55702bf3e4c7d82b676bfbde395270e90a704dca3c758dfe0380b3f01770542b4fd9bed1f1149af4ce28bfc54a27a96df6b700ac1745 *${NGINX_VERSION}-${PKG_RELEASE}.tar.gz\\\" && \\\n\tif [ \\\"\\$(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 && \\\n\ttar xzvf ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && \\\n\tcd pkg-oss-${NGINX_VERSION}-${PKG_RELEASE} && \\\n\tcd alpine && \\\n\tmake base && \\\n\tapk index --allow-untrusted -o ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz ${tempDir}/packages/alpine/${apkArch}/*.apk && \\\n\tabuild-sign -k ${tempDir}/.abuild/abuild-key.rsa ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz \" && \\\n\tcp ${tempDir}/.abuild/abuild-key.rsa.pub /etc/apk/keys/ && \\\n\tapk del --no-network .build-deps && \\\n\tapk add -X ${tempDir}/packages/alpine/ --no-cache $nginxPackages ;; esac && \\\n\tapk del --no-network .checksum-deps && \\\n\tif [ -n \"$tempDir\" ]; then rm -rf \"$tempDir\"; fi && \\\n\tif [ -f \"/etc/apk/keys/abuild-key.rsa.pub\" ]; then rm -f /etc/apk/keys/abuild-key.rsa.pub; fi && \\\n\tapk add --no-cache gettext-envsubst && \\\n\tapk add --no-cache tzdata && \\\n\tln -sf /dev/stdout /var/log/nginx/access.log && \\\n\tln -sf /dev/stderr /var/log/nginx/error.log && \\\n\tmkdir /docker-entrypoint.d", - "system_commands": [ - "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=\"c773d98b567bd585c17f55702bf3e4c7d82b676bfbde395270e90a704dca3c758dfe0380b3f01770542b4fd9bed1f1149af4ce28bfc54a27a96df6b700ac1745 *${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" - ], - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "COPY", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 1620, - "size_human": "1.6 kB", - "params": "docker-entrypoint.sh /", - "command_snippet": "COPY docker-entrypoint.sh /", - "command_all": "COPY docker-entrypoint.sh /", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "COPY", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 2125, - "size_human": "2.1 kB", - "params": "10-listen-on-ipv6-by-default.sh /docker-entrypoint.d", - "command_snippet": "COPY 10-listen-on-ipv6-by-default.sh /docker...", - "command_all": "COPY 10-listen-on-ipv6-by-default.sh /docker-entrypoint.d", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "COPY", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 389, - "size_human": "389 B", - "params": "15-local-resolvers.envsh /docker-entrypoint.d", - "command_snippet": "COPY 15-local-resolvers.envsh /docker-entryp...", - "command_all": "COPY 15-local-resolvers.envsh /docker-entrypoint.d", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "COPY", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 3018, - "size_human": "3.0 kB", - "params": "20-envsubst-on-templates.sh /docker-entrypoint.d", - "command_snippet": "COPY 20-envsubst-on-templates.sh /docker-ent...", - "command_all": "COPY 20-envsubst-on-templates.sh /docker-entrypoint.d", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "COPY", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 4619, - "size_human": "4.6 kB", - "params": "30-tune-worker-processes.sh /docker-entrypoint.d", - "command_snippet": "COPY 30-tune-worker-processes.sh /docker-ent...", - "command_all": "COPY 30-tune-worker-processes.sh /docker-entrypoint.d", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "ENTRYPOINT", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "is_exec_form": true, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "[\"/docker-entrypoint.sh\"]\n", - "command_snippet": "ENTRYPOINT [\"/docker-entrypoint.sh\"]\n", - "command_all": "ENTRYPOINT [\"/docker-entrypoint.sh\"]\n", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "EXPOSE", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "80/tcp", - "command_snippet": "EXPOSE 80/tcp", - "command_all": "EXPOSE 80/tcp", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "STOPSIGNAL", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "SIGQUIT", - "command_snippet": "STOPSIGNAL SIGQUIT", - "command_all": "STOPSIGNAL SIGQUIT", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "CMD", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "is_exec_form": true, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "[\"nginx\",\"-g\",\"daemon off;\"]\n", - "command_snippet": "CMD [\"nginx\",\"-g\",\"daemon off;\"]\n", - "command_all": "CMD [\"nginx\",\"-g\",\"daemon off;\"]\n", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "ENV", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "NJS_VERSION=0.8.10", - "command_snippet": "ENV NJS_VERSION=0.8.10", - "command_all": "ENV NJS_VERSION=0.8.10", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "ENV", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "NJS_RELEASE=1", - "command_snippet": "ENV NJS_RELEASE=1", - "command_all": "ENV NJS_RELEASE=1", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "RUN", - "time": "2025-04-16T14:50:31Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 36341673, - "size_human": "36 MB", - "command_snippet": "RUN set -x && \\\n\tapkArch=\"$(cat /etc/apk/arc...", - "command_all": "RUN set -x && \\\n\tapkArch=\"$(cat /etc/apk/arch)\" && \\\n\tnginxPackages=\" 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} \" && \\\n\tapk add --no-cache --virtual .checksum-deps openssl && \\\n\tcase \"$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 && \\\n\ttempDir=\"$(mktemp -d)\" && \\\n\tchown nobody:nobody $tempDir && \\\n\tapk 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 && \\\n\tsu nobody -s /bin/sh -c \" export HOME=${tempDir} && \\\n\tcd ${tempDir} && \\\n\tcurl -f -L -O https://github.com/nginx/pkg-oss/archive/${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && \\\n\tPKGOSSCHECKSUM=\\\"c773d98b567bd585c17f55702bf3e4c7d82b676bfbde395270e90a704dca3c758dfe0380b3f01770542b4fd9bed1f1149af4ce28bfc54a27a96df6b700ac1745 *${NGINX_VERSION}-${PKG_RELEASE}.tar.gz\\\" && \\\n\tif [ \\\"\\$(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 && \\\n\ttar xzvf ${NGINX_VERSION}-${PKG_RELEASE}.tar.gz && \\\n\tcd pkg-oss-${NGINX_VERSION}-${PKG_RELEASE} && \\\n\tcd alpine && \\\n\tmake module-geoip module-image-filter module-njs module-xslt && \\\n\tapk index --allow-untrusted -o ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz ${tempDir}/packages/alpine/${apkArch}/*.apk && \\\n\tabuild-sign -k ${tempDir}/.abuild/abuild-key.rsa ${tempDir}/packages/alpine/${apkArch}/APKINDEX.tar.gz \" && \\\n\tcp ${tempDir}/.abuild/abuild-key.rsa.pub /etc/apk/keys/ && \\\n\tapk del --no-network .build-deps && \\\n\tapk add -X ${tempDir}/packages/alpine/ --no-cache $nginxPackages ;; esac && \\\n\tapk del --no-network .checksum-deps && \\\n\tif [ -n \"$tempDir\" ]; then rm -rf \"$tempDir\"; fi && \\\n\tif [ -f \"/etc/apk/keys/abuild-key.rsa.pub\" ]; then rm -f /etc/apk/keys/abuild-key.rsa.pub; fi && \\\n\tapk add --no-cache curl ca-certificates", - "system_commands": [ - "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} \"", - "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", - "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=\"c773d98b567bd585c17f55702bf3e4c7d82b676bfbde395270e90a704dca3c758dfe0380b3f01770542b4fd9bed1f1149af4ce28bfc54a27a96df6b700ac1745 *${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 module-geoip module-image-filter module-njs module-xslt", - "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 curl ca-certificates" - ], - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-04-16T10:45:00-04:00", - "inst_set_time_index": 1, - "inst_set_time_reverse_index": 1 - }, - { - "type": "RUN", - "time": "2025-06-08T15:25:02Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 127131, - "size_human": "127 kB", - "command_snippet": "RUN apk add curl && \\\n\trm -rf /var/cache/apk...", - "command_all": "RUN apk add curl && \\\n\trm -rf /var/cache/apk/*", - "system_commands": [ - "apk add curl", - "rm -rf /var/cache/apk/*" - ], - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-06-08T11:15:00-04:00", - "inst_set_time_index": 2, - "inst_set_time_reverse_index": 0 - }, - { - "type": "COPY", - "time": "2025-06-08T15:25:03Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 195526, - "size_human": "196 kB", - "params": "/app/dist /usr/share/nginx/html/", - "command_snippet": "COPY /app/dist /usr/share/nginx/html/", - "command_all": "COPY /app/dist /usr/share/nginx/html/", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-06-08T11:15:00-04:00", - "inst_set_time_index": 2, - "inst_set_time_reverse_index": 0 - }, - { - "type": "EXPOSE", - "time": "2025-06-08T15:25:03Z", - "is_nop": false, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "80/tcp", - "command_snippet": "EXPOSE 80/tcp", - "command_all": "EXPOSE 80/tcp", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-06-08T11:15:00-04:00", - "inst_set_time_index": 2, - "inst_set_time_reverse_index": 0 - }, - { - "type": "ENTRYPOINT", - "time": "2025-06-08T15:25:03Z", - "is_nop": false, - "is_exec_form": true, - "local_image_exists": false, - "layer_index": 0, - "size": 0, - "params": "[\"nginx\",\"-g\",\"daemon off;\"]\n", - "command_snippet": "ENTRYPOINT [\"nginx\",\"-g\",\"daemon off;\"]\n", - "command_all": "ENTRYPOINT [\"nginx\",\"-g\",\"daemon off;\"]\n", - "comment": "buildkit.dockerfile.v0", - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-06-08T11:15:00-04:00", - "inst_set_time_index": 2, - "inst_set_time_reverse_index": 0 - }, - { - "type": "HEALTHCHECK", - "time": "2025-06-08T15:25:03Z", - "is_last_instruction": true, - "is_nop": false, - "local_image_exists": true, - "layer_index": 0, - "size": 0, - "params": "&{[\"CMD-SHELL\" \"\\\"/usr/bin/curl localhost\\\" || exit 1\"] \"5s\" \"5s\" \"5s\" \"0s\" '\\x03'}", - "command_snippet": "HEALTHCHECK --interval=5s --timeout=5s --sta...", - "command_all": "HEALTHCHECK --interval=5s --timeout=5s --start-period=5s --retries=3 CMD \\/usr/bin/curl localhost\\ || exit 1", - "comment": "buildkit.dockerfile.v0", - "raw_tags": [ - "react:latest" - ], - "is_buildkit_instruction": true, - "inst_set_time_bucket": "2025-06-08T11:15:00-04:00", - "inst_set_time_index": 2, - "inst_set_time_reverse_index": 0 - } - ] - } - ], - "image_created": true, - "image_build_engine": "internal" -}