We provide images which extend the official PHP-Images. We add additional stuff like:
- almost any PHP module preinstalled
- configuration based on ENV variables
- run multiple services (like php-fpm and nginx) with supervisord
Automated build and test running on Gitlab CI (GitLab.com CI custom Google Cloud runner) sponsored by Onedrop GmbH & Co. KG.
Or write an issue in our GitHub repository.
The general build process is currently a mixture of python jinja2 legacy and PHP.
First we build the files inside the docker
directory using this command:
docker run --rm -ti -v $PWD:/app -w /app webdevops/dockerfile-build-env make provision
It will use the Jinja2 templates inside of the template
directory and the
config files from the provisioning
directory.
The files in the docker
directory are never modified manually
This will be replaced with PHP twig templates in the future to streamline everything.
We generate a multi stage Gitlab-CI configuration using PHP:
docker run --rm -ti -v $PWD:/app -w /app/ci webdevops/php:8.1 composer install
docker run --rm -ti -v $PWD:/app -w /app webdevops/php:8.1 ci/console gitlab:generate
Gitlab CI builds every image independant and runs serverspec and structure tests on every image before pushing them to the registry.
As in many projects the documentation is kind of up to date 😅.
- Old version of the documentation is available on readthedocs
- New version is currently being written on gitbook
The following images which are currently supported are based on php:{VER}-fpm-buster
.
webdevops/php:7.4
webdevops/php:8.0
webdevops/php:8.1
webdevops/php:8.2
webdevops/php-dev:7.4
webdevops/php-dev:8.0
webdevops/php-dev:8.1
webdevops/php-dev:8.2
webdevops/php-apache:7.4
webdevops/php-apache:8.0
webdevops/php-apache:8.1
webdevops/php-apache:8.2
webdevops/php-apache-dev:7.4
webdevops/php-apache-dev:8.0
webdevops/php-apache-dev:8.1
webdevops/php-apache-dev:8.2
webdevops/php-nginx:7.4
webdevops/php-nginx:8.0
webdevops/php-nginx:8.1
webdevops/php-nginx:8.2
webdevops/php-nginx-dev:7.4
webdevops/php-nginx-dev:8.0
webdevops/php-nginx-dev:8.1
webdevops/php-nginx-dev:8.2
The following images which are currently supported are based on php:{VER}-fpm-alpine
.
webdevops/php:7.4-alpine
webdevops/php:8.0-alpine
webdevops/php:8.1-alpine
webdevops/php:8.2-alpine
webdevops/php-dev:7.4-alpine
webdevops/php-dev:8.0-alpine
webdevops/php-dev:8.1-alpine
webdevops/php-dev:8.2-alpine
webdevops/php-apache:7.4-alpine
webdevops/php-apache:8.0-alpine
webdevops/php-apache:8.1-alpine
webdevops/php-apache:8.2-alpine
webdevops/php-apache-dev:7.4-alpine
webdevops/php-apache-dev:8.0-alpine
webdevops/php-apache-dev:8.1-alpine
webdevops/php-apache-dev:8.2-alpine
webdevops/php-nginx:7.4-alpine
webdevops/php-nginx:8.0-alpine
webdevops/php-nginx:8.1-alpine
webdevops/php-nginx:8.2-alpine
webdevops/php-nginx-dev:7.4-alpine
webdevops/php-nginx-dev:8.0-alpine
webdevops/php-nginx-dev:8.1-alpine
webdevops/php-nginx-dev:8.2-alpine