Pre-configured hosting settings for popular software to simplify app setup and deployment.
We maintain a list of hosting settings for popular software to be pre-configured for smooth setup. When setting up an app with Git deployment the repos will be parsed by the stack detector and the software will be detected automatically. If the software is not detected or setup without Git deployment is preferred, the software can be chosen by the user. Software templates are version aware (although just major versions).
This is especially handy with modern software that supports ENV var configuration and environment detection — like Laravel or Craft CMS do.
# What it does not do
The software template will NOT install the selected software on your behalf. Installing software with composer is easy. We expect you to have a local development environment set up before. In many cases developers bring existing projects.
# All software templates
One block per major version, as the platform applies it. Software that names no settings of its own deploys with the platform defaults.
Bolt CMS 6, 5, 4
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | merge |
| Excluded paths | /node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | php bin/console cache:clear |
| Environment variables | Value |
|---|
| APP_ENV | prod |
| APP_SECRET | !RANDOM_KEY! |
| Database environment variables | Value |
|---|
| DATABASE_URL | mysql://${FORTRABBIT_DB_USER}:${FORTRABBIT_DB_PASSWORD}@${FORTRABBIT_DB_HOST}:3306/${FORTRABBIT_DB_NAME} |
CakePHP (platform defaults)
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Incoming firewall | no |
| Deploy strategy | merge |
| Deploy trigger | push |
| Deploy permission | repositoryAccess |
| Cached directories | node_modulesvendor.pnpm-store |
CodeIgniter (platform defaults)
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Incoming firewall | no |
| Deploy strategy | merge |
| Deploy trigger | push |
| Deploy permission | repositoryAccess |
| Cached directories | node_modulesvendor.pnpm-store |
Craft CMS 6
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /storage/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | mkdir -p storage/framework/{sessions,views,cache}php artisan migrate --forcephp artisan craft:upphp artisan craft:clear-caches |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_ENV | production |
| APP_KEY | !RANDOM_KEY! |
| APP_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
| LOG_CHANNEL | stack |
| LOG_STACK | stderr |
| Database environment variables | Value |
|---|
| DB_CONNECTION | mysql |
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
Craft CMS 5, 4, 3
| Deployment | Value |
|---|
| Root path | web |
| Deploy strategy | merge |
| Replaced paths | /config/project |
| Excluded paths | /node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | php craft migrate/allphp craft project-config/applyphp craft clear-caches/all |
| Environment variables | Value |
|---|
| CRAFT_ENVIRONMENT | ${FORTRABBIT_ENVIRONMENT_NAME} |
| CRAFT_DEV_MODE | false |
| CRAFT_ALLOW_ADMIN_CHANGES | false |
| CRAFT_ALLOW_UPDATES | false |
| CRAFT_SECURITY_KEY | !RANDOM_KEY! |
| CRAFT_STREAM_LOG | true |
| Database environment variables | Value |
|---|
| CRAFT_DB_SERVER | ${FORTRABBIT_DB_HOST} |
| CRAFT_DB_DRIVER | mysql |
| CRAFT_DB_DSN | mysql:host=${FORTRABBIT_DB_HOST};port=3306;dbname=${FORTRABBIT_DB_NAME} |
| CRAFT_DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| CRAFT_DB_USER | ${FORTRABBIT_DB_USER} |
Drupal 11
| Deployment | Value |
|---|
| Root path | web |
| Deploy strategy | replace |
| Excluded paths | /node_modules/web/sites/default/files |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | if vendor/bin/drush status --field=bootstrap 2>/dev/null | grep -q Successful; then vendor/bin/drush deploy; else echo 'No drush or no installed Drupal site, skipping drush deploy'; fi |
| Environment variables | Value |
|---|
| APP_ENV | prod |
| DRUPAL_HASH_SALT | !RANDOM_KEY! |
| Database environment variables | Value |
|---|
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_CONNECTION | ${FORTRABBIT_DB_TYPE} |
Filament 5, 4, 3
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /storage/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | mkdir -p storage/framework/{sessions,views,cache}php artisan migrate --forcephp artisan storage:link --forcephp artisan optimize |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_ENV | production |
| APP_KEY | !RANDOM_KEY! |
| APP_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
| LOG_CHANNEL | stack |
| LOG_STACK | stderr |
| QUEUE_CONNECTION | database |
| Database environment variables | Value |
|---|
| DB_CONNECTION | ${FORTRABBIT_DB_TYPE} |
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
General PHP
| Deployment | Value |
|---|
| Deploy strategy | replace |
| Excluded paths | /node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Database environment variables | Value |
|---|
| DATABASE_URL | mysql://${FORTRABBIT_DB_USER}:${FORTRABBIT_DB_PASSWORD}@${FORTRABBIT_DB_HOST}:3306/${FORTRABBIT_DB_NAME} |
Grav CMS 2, 1
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Deploy strategy | replace |
| Excluded paths | /user/pages/user/accounts/user/data/user/config/images/assets/cache/logs/tmp/backup/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | mkdir -p logs tmp backup images assets user/pages user/accounts user/data user/config |
| Environment variables | Value |
|---|
| GRAV_CONFIG | true |
| GRAV_CONFIG__system__errors__display | 0 |
HydePHP 2, 1
| Deployment | Value |
|---|
| Root path | _site |
| Deploy strategy | replace |
| Excluded paths | /node_modules/_site |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progressphp hyde build |
| Environment variables | Value |
|---|
| SITE_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
Jigsaw 1
| Deployment | Value |
|---|
| Root path | build_production |
| Deploy strategy | replace |
| Excluded paths | /node_modules/build_production |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progressvendor/bin/jigsaw build production |
| Environment variables | Value |
|---|
| BASE_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
Kirby 5, 4, 3
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Deploy strategy | replace |
| Excluded paths | /node_modules/content/media/public/media/web/media/data/ |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | rm -rf site/cache/*/pages |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_MODE | production |
Laravel 13, 12, 11, 10, 9, 8, 7, 6, 5, 4
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /storage/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | mkdir -p storage/framework/{sessions,views,cache}php artisan migrate --force |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_ENV | production |
| APP_KEY | !RANDOM_KEY! |
| APP_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
| LOG_CHANNEL | stack |
| LOG_STACK | stderr |
| Database environment variables | Value |
|---|
| DB_CONNECTION | ${FORTRABBIT_DB_TYPE} |
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
Leaf PHP 5, 4, 3
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /storage/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Environment variables | Value |
|---|
| APP_ENV | production |
| APP_DEBUG | false |
| APP_KEY | !RANDOM_KEY! |
| APP_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
| Database environment variables | Value |
|---|
| DB_CONNECTION | mysql |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
Lunar 1, 0.8
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /storage/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | mkdir -p storage/framework/{sessions,views,cache}php artisan migrate --force |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_ENV | production |
| APP_KEY | !RANDOM_KEY! |
| APP_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
| LOG_CHANNEL | stack |
| LOG_STACK | stderr |
| Database environment variables | Value |
|---|
| DB_CONNECTION | mysql |
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
October CMS 4, 3, 2
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /storage/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progressnpm installnpm run build |
| Post-deploy commands | php artisan migrate --force |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_ENV | production |
| APP_KEY | !RANDOM_KEY! |
| Database environment variables | Value |
|---|
| DB_CONNECTION | mysql |
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
Shopware (platform defaults)
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Incoming firewall | no |
| Deploy strategy | merge |
| Deploy trigger | push |
| Deploy permission | repositoryAccess |
| Cached directories | node_modulesvendor.pnpm-store |
Statamic 6, 5, 4, 3
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /storage/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progressnpm installnpm run build |
| Post-deploy commands | mkdir -p storage/framework/{sessions,views,cache}php artisan migrate --force |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_ENV | production |
| APP_KEY | !RANDOM_KEY! |
| APP_URL | https://${FORTRABBIT_MAIN_DOMAIN} |
| LOG_CHANNEL | stack |
| LOG_STACK | stderr |
| Database environment variables | Value |
|---|
| DB_CONNECTION | ${FORTRABBIT_DB_TYPE} |
| DB_DATABASE | ${FORTRABBIT_DB_NAME} |
| DB_HOST | ${FORTRABBIT_DB_HOST} |
| DB_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DB_PORT | ${FORTRABBIT_DB_PORT} |
| DB_USERNAME | ${FORTRABBIT_DB_USER} |
Symfony 8, 7, 6, 5
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /public/uploads/node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
| Post-deploy commands | php bin/console cache:clearphp bin/console assets:install publicphp bin/console doctrine:migrations:migrate |
| Environment variables | Value |
|---|
| APP_DEBUG | false |
| APP_ENV | prod |
| APP_SECRET | !RANDOM_KEY! |
| Database environment variables | Value |
|---|
| DATABASE_URL | mysql://${FORTRABBIT_DB_USER}:${FORTRABBIT_DB_PASSWORD}@${FORTRABBIT_DB_HOST}:3306/${FORTRABBIT_DB_NAME} |
Tempest 4, 3, 2, 1
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | replace |
| Excluded paths | /node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progressnpm installbun run build |
| Post-deploy commands | php ./tempest migrate:up |
| Database environment variables | Value |
|---|
| DATABASE_PASSWORD | ${FORTRABBIT_DB_NAME} |
| DATABASE_HOST | ${FORTRABBIT_DB_HOST} |
| DATABASE_PASSWORD | ${FORTRABBIT_DB_PASSWORD} |
| DATABASE_PORT | ${FORTRABBIT_DB_PORT} |
| DATABASE_USERNAME | ${FORTRABBIT_DB_USER} |
Twill (platform defaults)
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Incoming firewall | no |
| Deploy strategy | merge |
| Deploy trigger | push |
| Deploy permission | repositoryAccess |
| Cached directories | node_modulesvendor.pnpm-store |
TYPO3 CMS 14, 13, 12
| Deployment | Value |
|---|
| Root path | public |
| Deploy strategy | merge |
| Excluded paths | /node_modules |
| Build commands | composer install --no-dev --prefer-dist --no-interaction --no-ansi --no-progress |
Winter CMS (platform defaults)
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Incoming firewall | no |
| Deploy strategy | merge |
| Deploy trigger | push |
| Deploy permission | repositoryAccess |
| Cached directories | node_modulesvendor.pnpm-store |
WordPress (platform defaults)
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Incoming firewall | no |
| Deploy strategy | merge |
| Deploy trigger | push |
| Deploy permission | repositoryAccess |
| Cached directories | node_modulesvendor.pnpm-store |
Yii framework (platform defaults)
| Deployment | Value |
|---|
| Root path | (the repository root) |
| Incoming firewall | no |
| Deploy strategy | merge |
| Deploy trigger | push |
| Deploy permission | repositoryAccess |
| Cached directories | node_modulesvendor.pnpm-store |