What happened?
After the latest PHP 8.5 release, building on Alpine stopped working and halts due to missing certutil and libnss3-tools packages during install.
Example Dockerfile:
FROM alpine:3.23 AS base
RUN apk add --no-cache bash curl && \
echo "https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts" | tee -a /etc/apk/repositories && \
KEYFILE=$(curl -sJOw '%{filename_effective}' https://pkg.henderkes.com/api/packages/85/alpine/key) && \
mv ${KEYFILE} /etc/apk/keys/ && \
apk update && \
apk add frankenphp
What has changed during the install of the package that makes it require certutil and libnss3-tools?
Build Type
Docker (Alpine)
Worker Mode
Yes
Operating System
GNU/Linux
CPU Architecture
x86_64
PHP configuration
phpinfo() output
Relevant log output
Relevant log output
#5 [2/2] RUN apk add --no-cache bash curl && echo "https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts" | tee -a /etc/apk/repositories && KEYFILE=$(curl -sJOw '%{filename_effective}' https://pkg.henderkes.com
/api/packages/85/alpine/key) && mv ${KEYFILE} /etc/apk/keys/ && apk update && apk add frankenphp
#5 0.452 ( 1/14) Installing ncurses-terminfo-base (6.5_p20251123-r0)
#5 0.468 ( 2/14) Installing libncursesw (6.5_p20251123-r0)
#5 0.498 ( 3/14) Installing readline (8.3.1-r0)
#5 0.520 ( 4/14) Installing bash (5.3.3-r1)
#5 0.558 Executing bash-5.3.3-r1.post-install
#5 0.562 ( 5/14) Installing brotli-libs (1.2.0-r0)
#5 0.602 ( 6/14) Installing c-ares (1.34.6-r0)
#5 0.619 ( 7/14) Installing libunistring (1.4.1-r0)
#5 0.658 ( 8/14) Installing libidn2 (2.3.8-r0)
#5 0.676 ( 9/14) Installing nghttp2-libs (1.68.0-r0)
#5 0.692 (10/14) Installing nghttp3 (1.13.1-r0)
#5 0.709 (11/14) Installing libpsl (0.21.5-r3)
#5 0.726 (12/14) Installing zstd-libs (1.5.7-r2)
#5 0.752 (13/14) Installing libcurl (8.17.0-r1)
#5 0.776 (14/14) Installing curl (8.17.0-r1)
#5 0.805 Executing busybox-1.37.0-r30.trigger
#5 0.812 OK: 15.2 MiB in 30 packages
#5 0.834 https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts
#5 1.514 v3.23.3-535-g80547603fef [https://dl-cdn.alpinelinux.org/alpine/v3.23/main]
#5 1.514 v3.23.4-9-g23a573fd441 [https://dl-cdn.alpinelinux.org/alpine/v3.23/community]
#5 1.514 [https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts]
#5 1.514 OK: 27939 distinct packages available
#5 1.757 (1/3) Installing php-zts-cli (8.5.5-r0)
#5 2.029 Executing php-zts-cli-8.5.5-r0.pre-install
#5 2.035 * /proc/self/fd/8: line 4: groupadd: not found
#5 2.035 ERROR: lib/apk/exec/php-zts-cli-8.5.5-r0.pre-install: exited with error 127
#5 2.651 Executing php-zts-cli-8.5.5-r0.post-install
#5 2.654 (2/3) Installing php-zts-embed (8.5.5-r0)
#5 3.514 (3/3) Installing frankenphp (1.12.2p85-r0)
#5 4.629 Executing frankenphp-1.12.2p85-r0.post-install
#5 6.693 * {"level":"warn","ts":1776342537.5475538,"msg":"installing root certificate (you might be prompted for password)","path":"localhost:2019/pki/ca/local"}
#5 6.694 * {"level":"info","ts":1776342537.5485108,"msg":"warning: \"certutil\" is not available, install \"certutil\" with \"apt install libnss3-tools\" or \"yum install nss-tools\" and try again"}
#5 6.694 * {"level":"info","ts":1776342537.5485196,"msg":"define JAVA_HOME environment variable to use the Java trust"}
#5 6.697 * Error: failed to execute trust: exec: "trust": executable file not found in $PATH
#5 6.700 Executing busybox-1.37.0-r30.trigger
#5 6.707 1 error; 155.8 MiB in 33 packages
#5 ERROR: process "/bin/sh -c apk add --no-cache bash curl && echo \"https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts\" | tee -a /etc/apk/repositories && KEYFILE=$(curl -sJOw '%{filename_effective}' https:
//pkg.henderkes.com/api/packages/85/alpine/key) && mv ${KEYFILE} /etc/apk/keys/ && apk update && apk add frankenphp" did not complete successfully: exit code: 1
------
> [2/2] RUN apk add --no-cache bash curl && echo "https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts" | tee -a /etc/apk/repositories && KEYFILE=$(curl -sJOw '%{filename_effective}' https://pkg.henderkes.com
/api/packages/85/alpine/key) && mv ${KEYFILE} /etc/apk/keys/ && apk update && apk add frankenphp:
2.651 Executing php-zts-cli-8.5.5-r0.post-install
2.654 (2/3) Installing php-zts-embed (8.5.5-r0)
3.514 (3/3) Installing frankenphp (1.12.2p85-r0)
4.629 Executing frankenphp-1.12.2p85-r0.post-install
6.693 * {"level":"warn","ts":1776342537.5475538,"msg":"installing root certificate (you might be prompted for password)","path":"localhost:2019/pki/ca/local"}
6.694 * {"level":"info","ts":1776342537.5485108,"msg":"warning: \"certutil\" is not available, install \"certutil\" with \"apt install libnss3-tools\" or \"yum install nss-tools\" and try again"}
6.694 * {"level":"info","ts":1776342537.5485196,"msg":"define JAVA_HOME environment variable to use the Java trust"}
6.697 * Error: failed to execute trust: exec: "trust": executable file not found in $PATH
6.700 Executing busybox-1.37.0-r30.trigger
6.707 1 error; 155.8 MiB in 33 packages
------
Dockerfile:3
--------------------
2 |
3 | >>> RUN apk add --no-cache bash curl && \
4 | >>> echo "https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts" | tee -a /etc/apk/repositories && \
5 | >>> KEYFILE=$(curl -sJOw '%{filename_effective}' https://pkg.henderkes.com/api/packages/85/alpine/key) && \
6 | >>> mv ${KEYFILE} /etc/apk/keys/ && \
7 | >>> apk update && \
8 | >>> apk add frankenphp
9 |
--------------------
ERROR: failed to build: failed to solve: process "/bin/sh -c apk add --no-cache bash curl && echo \"https://pkg.henderkes.com/api/packages/85/alpine/main/php-zts\" | tee -a /etc/apk/repositories && KEYFILE=$(curl -sJOw
'%{filename_effective}' https://pkg.henderkes.com/api/packages/85/alpine/key) && mv ${KEYFILE} /etc/apk/keys/ && apk update && apk add frankenphp" did not complete successfully: exit code: 1
What happened?
After the latest PHP 8.5 release, building on Alpine stopped working and halts due to missing
certutilandlibnss3-toolspackages during install.Example Dockerfile:
What has changed during the install of the package that makes it require
certutilandlibnss3-tools?Build Type
Docker (Alpine)
Worker Mode
Yes
Operating System
GNU/Linux
CPU Architecture
x86_64
PHP configuration
phpinfo() output
Relevant log output
Relevant log output