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:

ComponentProcess typeHorizontally scalable
NGINXWebYes
PHP-FPM (7.4+)WorkerYes
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 nameDescription
DRUPAL_DB_TABLE_PREFIXSets a custom database table prefix
DRUPAL_HASH_SALTSets 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.