Skip to content

A docker Drupal development image using PHP 7.0 and HTTP/2 on Ubuntu 14.04, inheriting configurations from https://github.com/andrewholgate/docker-drupal-php70

Notifications You must be signed in to change notification settings

andrewholgate/docker-drupal-php70-dev

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dockerised Drupal 8 development environment using PHP 7.0 on Ubuntu 16.04 with HTTP/2. This image is the development companion to the docker-drupal-php70 project.

Included Tools

Debugging Tools

  • XDebug - PHP debugging and profiling.
  • XHProf - function-level hierarchical profiler.

Front-end Tools

  • Wraith - for visual regression testing.
  • BrowserStackLocal - for automating browser tests locally (need a paid account).

PHP Documentation Tools

  • DoxyGen - generate documentation from annotated PHP code. It is used to generate XML which is then interpreted by Sphinx.
  • Sphinx - generate beautiful Read The Docs format using Breathe as a bridge to DoxyGen XML output.

Other

Installation

Create Presistant Database data-only container

# Build database image based off MySQL 5.7
sudo docker run -d --name mysql-drupal-php70-dev mysql:5.7 --entrypoint /bin/echo MySQL data-only container for Drupal Dev MySQL

Build Project using Docker Compose

# Customise docker-compose.yml configurations for environment.
cp docker-compose.yml.dist docker-compose.yml
vim docker-compose.yml

# Build docker containers using Docker Composer.
sudo docker-compose build --no-cache
sudo docker-compose up -d

Host Access

From the host server, add the web container IP address to the hosts file.

# Add IP address to hosts file.
./host.sh

Logging into Web Front-end

# Using the container name of the web frontend.
sudo docker exec -it dockerdrupalphp70dev_drupalphp70devweb_1 su - ubuntu

Local customisations

# Customize scripts in local folders.
cp local/bashrc.dist local/bashrc
vim local/bashrc

XDebug enable and disable

Note that XDebug CLI is disabled by default.

# Turn XDebug on / off in Apache.
xdebug on
xdebug off

# Turn XDebug on / off fopr both Apache and CLI.
xdebug on-all
xdebug off-all

BrowserStack integration

Use BrowserStack credentials to get {Access Key}

# Run BrowserStackLocal binary in background
BrowserStackLocal {Access Key} </dev/null &>/dev/null &