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.
- Wraith - for visual regression testing.
- BrowserStackLocal - for automating browser tests locally (need a paid account).
- 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.
- NodeJS LTS and NVM (Node Version Manager)
- Java Runtime Environment (JRE) - project dev tools like sitespeed.io need this.
# 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
# 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
From the host server, add the web container IP address to the hosts file.
# Add IP address to hosts file.
./host.sh
# Using the container name of the web frontend.
sudo docker exec -it dockerdrupalphp70dev_drupalphp70devweb_1 su - ubuntu
# Customize scripts in local folders.
cp local/bashrc.dist local/bashrc
vim local/bashrc
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
Use BrowserStack credentials to get {Access Key}
# Run BrowserStackLocal binary in background
BrowserStackLocal {Access Key} </dev/null &>/dev/null &