Dockerised Drupal container using PHP 7.0 and HTTP/2 on Ubuntu 16.04 and configured with PHP tools.
For example of how to use this container, see docker-drupal-project-example
- PHP 7.0.x with production settings.
- HTTP/2
- Apache 2.4 with PHP-FPM and event MPM configured for HTTP & HTTPS and with minimal modules installed.
- MySQL 5.7 client
- Redis 3.x and phpredis extension
- Google Page Speed for Apache
- cURL with HTTP/2 support
- Linux troubleshooting tools
- git (latest version)
- Composer - PHP dependency management.
- Rsyslog and common log directory
- Guest user (
ubuntu
)
# Build database image based off MySQL 5.7
sudo docker run -d --name mysql-drupal-php70 mysql:5.7 --entrypoint /bin/echo MySQL data-only container for Drupal PHP 7.0 MySQL
# Clone Drupal docker repository
git clone https://github.com/andrewholgate/docker-drupal-php70.git
cd docker-drupal-php70
# Build docker image
sudo docker build --rm=true --no-cache --tag="drupal-php70" . | tee ./build.log
# Customise docker-compose.yml configurations for environment.
cp docker-compose.yml.dist docker-compose.yml
vim docker-compose.yml
# Build docker containers using Docker Compose.
sudo docker-compose build --no-cache | tee ./build.log
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 dockerdrupalphp70_drupalphp70web_1 su - ubuntu