Visit NES for PHP 7 Home Page

NES for PHP 7.2 Container Images

Pull the NES for PHP images, drop-in replacements for the official php images, on Debian 12.

The NES for PHP 7.2 images are drop-in replacements for the official php images for PHP 7.2 (the cli, fpm and apache variants), with release v7.2.34-nes-7.2.1: the same entrypoints, commands, ports, PHP_INI_DIR, docker-php-ext-* helpers and www-data user. In a Dockerfile, change the FROM line and nothing else in the PHP setup.

Images and tags

Every image is in registry.nes.herodevs.com/nes/php-nes. Each image's version is its release without the v, 7.2.34-nes-7.2.1, and its tag is that version, the variant and the base: 7.2.34-nes-7.2.1-<variant>-<base>. A tag names one release of one image and never moves.

BaseVariantRelease tag
Debian 12cli7.2.34-nes-7.2.1-cli-bookworm
Debian 12fpm7.2.34-nes-7.2.1-fpm-bookworm
Debian 12apache7.2.34-nes-7.2.1-apache-bookworm

The registry serves each image under its release tag only: the official images' moving tags, such as 7.2-fpm, have no NES counterpart. To update to a new NES for PHP release, change the tag to the new release's.

Access

The images are in the NES registry at registry.nes.herodevs.com, which requires a HeroDevs access token. If you do not have an access token, contact support@herodevs.com. For more information see Access Tokens.

Pull an image

Log in with your contact e-mail and your access token as the password:

docker login registry.nes.herodevs.com -u <your-contact-email>

then pull the images you use:

Debian 12
docker pull registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-cli-bookworm
docker pull registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-fpm-bookworm
docker pull registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-apache-bookworm

In a Dockerfile, replace the official image with the NES image of the same variant, for example php:7.2-fpm with:

FROM registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-fpm-bookworm

In Kubernetes, give the pods a pull secret:

kubectl create secret docker-registry herodevs-registry \
  --docker-server=registry.nes.herodevs.com \
  --docker-username=<your-contact-email> \
  --docker-password=<your-nes-access-token>

and name it in the pod spec's imagePullSecrets.

Check the image

php -v shows PHP 7.2.34-nes, and the image's org.opencontainers.image.version label is the image version, 7.2.34-nes-7.2.1:

docker run --rm registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-fpm-bookworm php -v
docker image inspect registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-fpm-bookworm | grep org.opencontainers.image.version

Load from a tar

A host that cannot reach the registry can take an image as a file. On a host that can, pull the image and save it with its checksum:

docker pull registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-fpm-bookworm
docker save -o nes-php-7.2.34-nes-7.2.1-fpm-bookworm.tar registry.nes.herodevs.com/nes/php-nes:7.2.34-nes-7.2.1-fpm-bookworm
sha256sum nes-php-7.2.34-nes-7.2.1-fpm-bookworm.tar > nes-php-7.2.34-nes-7.2.1-fpm-bookworm.tar.sha256

Copy both files to the other host, then check and load the image:

sha256sum -c nes-php-7.2.34-nes-7.2.1-fpm-bookworm.tar.sha256
docker load -i nes-php-7.2.34-nes-7.2.1-fpm-bookworm.tar