Skip to content
specsnlPublic

About

A PHP 8.5 (FPM, Apache and FrankenPHP) based Docker base image.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

php85

Build Images

A PHP 8.5 (FPM, Apache and FrankenPHP) based Docker base image.

Pulling the images

# FPM
docker pull ghcr.io/specsnl/php85:latest
docker pull ghcr.io/specsnl/php85/builder:latest

# Apache
docker pull ghcr.io/specsnl/php85/apache:latest
docker pull ghcr.io/specsnl/php85/apache/builder:latest

# FrankenPHP
docker pull ghcr.io/specsnl/php85/frankenphp:latest
docker pull ghcr.io/specsnl/php85/frankenphp/builder:latest

The image name scheme: ghcr.io/specsnl/php85[/{VARIANT}][/{TARGET}]:{VERSION}

  • {VARIANT}: omitted for FPM, otherwise apache or frankenphp
  • {TARGET}: omitted for runtime, otherwise builder
  • {VERSION}: latest, a release tag (i.e. 0.5.5), main or pr-<number>

The builder image is also published under its old names, builder_nodejs and node, from the time Node.js had its own target. These names are deprecated and will be removed (specsnl/github-actions#76); use builder instead.

Building the docker image(s)

There are multiple targets:

  • runtime: this is for production. It does not contain any development tools like Composer and Xdebug.
  • builder: this is for development. This is based on the runtime-target and it adds Composer, Xdebug, Node.js etc.

Building runtime-target:

docker build --tag ghcr.io/specsnl/php85:latest --file fpm/Dockerfile --target runtime .

Building builder-target:

docker build --tag ghcr.io/specsnl/php85/builder:latest --file fpm/Dockerfile --target builder .

Task commands

Available Task commands:

* build:              Build all PHP Docker image targets of the FPM, Apache and FrankenPHP variants
* generate:           Generate all Dockerfiles from Dockerfile.tmpl
* lint:               Apply a Dockerfile linter to all Dockerfiles
* build:apache:       Build all PHP Docker image targets of the Apache variant
* build:fpm:          Build all PHP Docker image targets of the FPM variant
* build:frankenphp:   Build all PHP Docker image targets of the FrankenPHP variant
* install:hooks:      Install git hooks (pre-commit regenerates and stages Dockerfiles from template)
* lint:apache:        Apply a Dockerfile linter (https://github.com/hadolint/hadolint)
* lint:fpm:           Apply a Dockerfile linter (https://github.com/hadolint/hadolint)
* lint:frankenphp:    Apply a Dockerfile linter (https://github.com/hadolint/hadolint)
* remove:hooks:       Remove installed git hooks
* shell:apache:       Interactive shell
* shell:fpm:          Interactive shell
* shell:frankenphp:   Interactive shell

About

A PHP 8.5 (FPM, Apache and FrankenPHP) based Docker base image.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages