There are two web applications that will be installed to provide a local AADL development environment:
- The AADL Drupal web site.
- The AADL API Laravel web service.
-
Download a recent database dump file from univac.aadl.org. Open a terminal window, change directory to the docker4aadl directory and enter the following scp command to copy the latest database backup from univac:
scp [email protected]:/mnt/backups/latest/daily_migration.sql.gz mariadb-init/
-
Change directory to the aadlorg folder and install Drupal and the aadl custom modules by entering
composer install
-
Copy domain aliases from the 'etc_hosts' file in the docker4aadl directory to your local host machine's /etc/hosts file.
-
Get Access Token from github for private AADL repositories
-
Run
docker-compose up
to create docker containers and to install the database backup. -
Open terminal window in the aadldev_php container. Use the docker command:
docker exec -it aadldev_php bash
- Download drupal
cd /var/www/html/aadlorg && drush dl drupal --drupal-project-rename=web
- Install modules
composer update
- Download drupal
-
In a browser, open
http://aadldev.test:8000/
and complete the Drupal install process.- Select
standard
install profile - Database connection info:
- database:
drupal
- username:
drupal
- password:
drupal
- Advanced info host:
mariadb
- database:
- Select
-
Prepare the aadl theme
- Change directory to web/themes/custom/aadl/
- Follow the installation steps in the aadl readme.md file
- Check that web/themes/contrib/ has the 'neato' and the 'neato 2' theme installed. If 'neato 2' is missing, scp a copy from pinkeye.
- In the browser, navigate to the admin/appearance section and select the aadl theme as the Default
- Rebuilt the drupal cache. Run
drush cr
from a terminal window connected to the aadldev_php container - from the root level for the web siteaadlorg/web/
-
Change path to '/../vendor/autoload.php' in aadlorg/web/autoload.php
Open terminal window in the aadldev_php container
- Clone AADL API from github
cd /var/www/html && git clone https://github.com/aadl/api.git
- Install API
cd /var/www/html/api %% composer install
Docker4Drupal is a set of docker images optimized for Drupal. Use docker-compose.yml
file from the latest stable release to spin up local environment on Linux, Mac OS X and Windows.
- Read the docs on how to use
- Ask questions on Slack
- Follow @wodbycloud for future announcements
The Drupal stack consist of the following containers:
Container | Versions | Image | ARM64 support | Enabled by default |
---|---|---|---|---|
Nginx | 1.21, 1.20, 1.19 | wodby/nginx | ✓ | ✓ |
Apache | 2.4 | wodby/apache | ✓ | |
Drupal | 9, 8, 7 | wodby/drupal | ✓ | ✓ |
PHP | 8.0, 7.4, 7.3 | wodby/drupal-php | ✓ | |
Crond | wodby/drupal-php | ✓ | ✓ | |
MariaDB | 10.6, 10.5, 10.4, 10.3 | wodby/mariadb | ✓ | ✓ |
PostgreSQL | 14, 13, 12, 11, 10, 9.6 | wodby/postgres | ✓ | |
Redis | 6, 5 | wodby/redis | ✓ | |
Memcached | 1 | wodby/memcached | ||
Varnish | 6.0, 4.1 | wodby/varnish | ||
Node.js | 16, 14, 12 | wodby/node | ||
Drupal node | 1.0 | wodby/drupal-node | ||
Solr | 8, 7, 6, 5 | wodby/solr | ||
Elasticsearch | 7, 6 | wodby/elasticsearch | ||
Kibana | 7, 6 | wodby/kibana | ||
OpenSMTPD | 6.0 | wodby/opensmtpd | ||
Mailhog | latest | mailhog/mailhog | ✓ | |
AthenaPDF | 2.16.0 | arachnysdocker/athenapdf-service | ||
Rsyslog | latest | wodby/rsyslog | ||
Blackfire | latest | blackfire/blackfire | ||
Webgrind | 1 | wodby/webgrind | ||
Xhprof viewer | latest | wodby/xhprof | ||
Adminer | 4.6 | wodby/adminer | ||
phpMyAdmin | latest | phpmyadmin/phpmyadmin | ||
Selenium chrome | 3.141 | selenium/standalone-chrome | ||
Traefik | latest | _/traefik | ✓ | ✓ |
Supported Drupal versions: 9 / 8 / 7
Full documentation is available at https://wodby.com/docs/stacks/drupal/local.
Images tags format is [VERSION]-[STABILITY_TAG]
where:
[VERSION]
is the version of an application (without patch version) running in a container, e.g. wodby/nginx:1.15-x.x.x
where Nginx version is 1.15
and x.x.x
is a stability tag. For some images we include both major and minor version like PHP 7.2
, for others we include only major like Redis 5
.
[STABILITY_TAG]
is the version of an image that corresponds to a git tag of the image repository, e.g. wodby/mariadb:10.2-3.3.8
has MariaDB 10.2
and stability tag 3.3.8
. New stability tags include patch updates for applications and image's fixes/improvements (new env vars, orchestration actions fixes, etc). Stability tag changes described in the corresponding a git tag description. Stability tags follow semantic versioning.
We highly encourage to use images only with stability tags.
We regularly update images used in this stack and release them together, see releases page for full changelog and update instructions. Most of routine updates for images and this project performed by the bot via scripts located at wodby/images.
Docker4Drupal is a project designed to help you spin up local environment with docker-compose. If you want to deploy a consistent stack with orchestrations to your own server, check out Drupal stack on Wodby .
This project is licensed under the MIT open source license.