Drupal
Deploy a highly scalable, self-healing Drupal cluster in seconds.
About
Drupal is a robust, open-source web content management framework.
Stack
This template provisions the following components:
Component | Process type | Horizontally scalable |
---|---|---|
NGINX | Web | Yes |
PHP-FPM (7.4+) | Worker | Yes |
MariaDB (10.3+) | Service | - |
Redis Cache* | Service | - |
Elasticsearch* | Service | - |
Varnish* | Service | - |
* Optional addon
Supported versions
- Drupal 8, 9
Installs the latest stable version by default.
Alternatively, choose "Skip installation" to bring your own codebase.
Deployment
Build steps
Package dependencies are automatically installed with composer
during build.
Pre-deploy hooks
The following commands are executed after each deploy.
drush -y cache-rebuild
drush -y updatedb
drush -y config-import --partial
Configuration
This template automatically manages the Drupal configuration files settings.php
and settings.env.php
. Do not include these files in your project repository.
- Database credentials are automatically populated based on the environment.
- Redis, Varnish and Elasticsearch can be configured (manually) if the addons are enabled.
Environment variables
The Drupal configuration can be customized with the following variables.
Variable name | Description |
---|---|
DRUPAL_DB_TABLE_PREFIX | Sets a custom database table prefix |
DRUPAL_HASH_SALT | Sets a custom security hash salt (if not set it will be generated automatically) |
Cron jobs
This template doesn't automatically configure any cron jobs. You can manage scheduled tasks from the Site Dashboard > Settings > Cron jobs section.
Persistent disks
The following directories are mounted by persistent storage volumes.
./web/sites/default/files
Do NOT commit these folders to your Git repository as they will be overwritten. Use SFTP to upload files.
Admin tools
The following utilities are included with this template.
- drush is a command-line interface for Drupal.
- phpMyAdmin is a web-based administration tool for your database.