• 3.5.1 207df04410

    3.5.1
    All checks were successful
    Build images / docker (push) Successful in 7m49s
    Stable

    Michael Westergaard released this 2026-10-21 19:04:00 +00:00 | 0 commits to main since this release

    PHP 8.5.12 on Alpine 3.24.2, nginx 1.30.4-r1. ARM64 only.

    Images:

    • git.westergaard.cloud/klafbang/nginx-php-fpm:3.5.1 — large; also latest.
    • git.westergaard.cloud/klafbang/nginx-php-fpm:3.5.1-small — small; also small.

    Security fixes are separate commits:

    • 6ec2971: Git credentials are removed from saved remotes and the service environment; PHP-FPM clears worker environments.
    • b6c6154: Replace the default phpinfo page with a minimal response.
    • 35e96cc: Run service masters and workers as nginx, restrict the FPM socket to 0660, and use unprivileged listening ports.

    The single-container architecture is retained: clone the configured Git branch at startup, prepare configuration, then permanently drop root before starting services. Git updates remain unpinned by default. Application code and Git metadata remain root-owned.

    Application HTTP moves to port 8080. GET /healthz on port 8081 passes through nginx to PHP-FPM's built-in ping and fails when FPM is unavailable. Use HTTP startup, readiness and liveness probes against this endpoint.

    Both variants share the minimal base and the same startup/configuration files. The small image retains MySQLi and GD with JPEG/FreeType plus the official PHP base's built-in modules. It excludes Certbot/Let's Encrypt, MongoDB, Xdebug, nginx Lua/NDK, Composer, SSH, Supervisor, Python, the additional PostgreSQL/PDO-MySQL/Intl/XSL/SOAP/ZIP/EXIF extensions and their optional helper scripts. It runs both services using a small signal-handling launcher; Kubernetes performs restarts. The large image retains its optional features and Supervisor.

    Validation: native ARM64 builds; both variants pass credential, process-user/capability, socket-permission, extension, failed-FPM health and graceful-shutdown checks under a 128 MiB memory limit. Five deployment configurations pass startup and health checks; Mobile chart bytes match the previous image. Production database workflows were not exercised.

    Downloads
  • 3.5.0 58989efb25

    3.5.0
    All checks were successful
    Build images / docker (push) Successful in 5m51s
    Stable

    Michael Westergaard released this 2026-10-21 18:11:37 +00:00 | 5 commits to main since this release

    PHP 8.5.12 on Alpine 3.24.2, with nginx 1.30.4-r1. ARM64 only.

    • Remove compilers and development headers after building extensions; retain required runtime libraries.
    • Pin Xdebug 3.5.3 and MongoDB 2.5.5.
    • Correct the Xdebug opt-in and OPcache disable switches; verify the Composer installer checksum.
    • Update README and version documentation.

    Image: git.westergaard.cloud/klafbang/nginx-php-fpm:3.5.0 (also published as latest).

    Validation: native ARM64 build; application startup and HTTP checks with a 128 MiB memory limit; Mobile chart output identical to PHP 8.2; extension and environment-switch checks passed. Production database workflows were not exercised.

    PHP 8.2 remains available through the 3.2.0 image tag.

    Downloads