Wodby-based web stack for Drupal.

This package's canonical repository appears to be gone and the package has been frozen as a result.

v4.5 2022-12-27 08:05 UTC

This package is not auto-updated.

Last update: 2024-12-25 12:53:21 UTC


README

v4.5 (2022-12-27)

  • New: Add shuttle site rename [name] command.
  • Improved: Services are in charge of creating ports and passwords.
  • Improved: Update php, nginx, and mariadb image tags.
  • Fixed: Periods are no longer allowed in project names.
  • Fixed: Remove docker-compose version from versions array.
  • Internal: Prevent CI job from failing.

Changes in v4.4 (2021-11-17)

  • Internal: Add CI job to build releases.

Changes in v4.3 (2021-11-16)

  • New: GPL license.

Changes in v4.2 (2021-11-16)

  • Fixed: PHP path in executable not working on macOS Big Sur.
  • Fixed: Wrong image and config for Solr service.

Changes in v4.1 (2021-09-03)

  • New "code" service, which allows spinning up a code-server (web-based VS Code) container on non-live environments.
  • New docs directory.

Changes in v4.0 (2021-06-17)

  • Remove compatibility tags from some Docker images: all that matters now is the version number, e.g. 7.4 for PHP and 1.19 for Nginx.
  • Clean up deprecated code, and add future deprecations.
  • Bug fixes and code improvements.
  • Add support for Xdebug 3.
  • Disable HTTPS on local.
  • Remove domain name from project path in container: this makes it easy to configure Xdebug globally on IDEs like VS Code.

See the previous changes.

What is Shuttle?

Shuttle provides a full stack of Docker-based services used to run Drupal sites, either on a local environment or on a remote server. Under the hood, Shuttle is a wrapper around various docker-compose commands, and aims to take the effort out of configuring stacks based on Wodby.

The default services it provides are:

  • One system-wide Traefik container.
  • For each site:
    • Two Nginx containers.
    • Two PHP containers.
    • One PHP/crond container.
    • One MariaDB container.

The default configuration can be overridden globally or on a per-site basis.

Read about how to get started with Shuttle.

Notes

  • Using Shuttle for local development has been fully tested on macOS, on both Intel and Apple Silicon architectures. Apple Silicon requires recent tags of Wodby images. Shuttle v4.0+ with no tag overrides will take care of it.
  • Shuttle runs pretty smoothly on Raspberry Pi, although there might be issues with the MariaDB container. Using a SQLite database instead is a good workaround.
  • There are still issues using Shuttle for local development on Linux, mostly due to file permissions.

Planned improvements

  • Better install process, with guided creation of the env.yml file.
  • Better site-configuration process, with guided creation of the shuttle.yml file.
  • Better handling of default values for the SHUTTLE_SERVER variable.
  • More streamlined setup of the Solr service.