Public | Automated Build

Last pushed: a year ago
Short Description
Many Drupal8 projects. Many environments. One image.
Full Description

BYOD Baseimage

Many Drupal 8 projects. Many environments. One image.

Read the full documentation here.


The concept is quite simple: use one Docker container environment to develop and deploy in testing/staging/production as many Drupal projects as you wish. The code changes, but the infrastructure to run it remains the same, always.

Warning: this is targeted to Drupal 8 only (D7 or D6 are not tested or supported).

What Is Included

BYOD is based on Baseimage-docker. So it already comes packed with all its benefits.

Then I put together on top of it:

  • php-fpm: the PHP application layer coupled together with the bells and whistles required to run Drupal well (from the security, stability and performance perspective). This also includes:
    • PECL uploadprogress: enable upload progress bars within Drupal.
    • Twig C extension: improve D8 template engine performance.
    • OPcache: for PHP script bytecode caching.
  • nginx: to make the web happens faster.
  • Drush: a command-line shell and scripting interface for Drupal.
  • Drupal Console: a tool to generate boilerplate code, interact with and debug Drupal.

For php-fpm and caching packages, I use the standard repositories. For the nginx one, offical PPA is used to bring the stable channel. As for uploadprogress, Twig C extension, Drush and Drupal Console, they are compiled from the official sources during the image build time.

What Is NOT Included (and why)

BYOD does not include a database layer. It also doesn't include Drupal itself, hence the name.

And why is that? As my main motivation is to build a base image that could be used anywhere that also should provide a immutable infrastructure in any case, I have addressed these layers (database and frontend application) somewhere in the system architectures I'm deploying from a long time now.

So, to be able to scale both horizontally (hardware resources) and vertically (system distribution), database and Drupal code is just not necessary in BYOD context. Those missing resources comes from somewhere in your infrastructure.

Read the full documentation here.


This is free (as in speech) and open source software. Use at will.
©2016 Deny Dias, licensed under GPLv3.

Docker Pull Command
Source Repository