Introduction

We’re providing a full stack Docker container layout for PHP environments for development and production with CentOS, Debian and Ubuntu and also PHP 7 and HHVM and will be automated tested with RSpec and Serverspec to ensure our quality requirements. All Dockerfiles are available on our Dockerfile GitHub Repository and all built Docker images are available on official Docker hub.

Dockerfile layout

Docker images

webdevops/bootstrap (webdevops/ansible)

Our webdevops/bootstrap images are using official distribution images and add following features:

  • run full system upgrade, update all packages
  • install all locales
  • install latest Ansible version for provisioning

We’re currently supporting following linux distributions:

  • CentOS 7
  • Debian 7
  • Debian 8
  • Ubuntu 12.04
  • Ubuntu 14.04 (currently latest tag)
  • Ubuntu 15.04
  • Ubuntu 15.10

The webdevops/ansible images are based on bootstrap with no changes.

webdevops/base

Based on webdevops/base the base image contains an Ansible provisioning and some preconfigured daemons:

  • supervisord (modular service layout)
  • syslog-ng
  • postfix (disabled by default)

webdevops/php

Based on the webdevops/base image we’ve add PHP as cli and fpm service fully preconfigured. PHP 7 is available as webdevops/php:debian8-php7. It includes dotdeb PHP 7 packages. All php images contains

  • PHP cli
  • PHP FPM (via supervisord)
  • pear
  • composer
  • xdebug (disabled by default)
  • imagemagick
  • graphicsmagick

webdevops/php-apache and webdevops/php-nginx

Based on the webdevops/php image we’ve add also a fully configured Apache or Nginx for running PHP web applications.

webdevops/hhvm (and webdevops/hhvm-*)

Also based on the webdevops/base image there is an running standalone hhvm or with Apache/Nginx available. It’s a drop in replacement for the webdevops/php* images.

webdevops/apache and webdevops/nginx

Based on the webdevops/base image there is also a standalone version of Apache and Nginx without running PHP or HHVM. With this images you can build your own service layout.

webdevops/postfix

Based on the webdevops/base image the webdevops/postfix image provides a simple to use mailing (MTA) service. The difference between the base image and the postfix image is only some simple provisioning with environment variables.

webdevops/mail-sandbox

Based on the webdevops/postfix image this image provides a fully configured postfix which catches all ingoing emails and delivers them to a local mailbox. All mails of this mailbox can be accessed via Dovecot IMAP service. If you want to install a email sandbox service eg. for development you can use this docker image to provide an easy way to collect all mail. Use iptables rules to redirect all outgoing mails to the mail-sandbox container: