maco-studios / corsair
Docker-powered local dev environment for Magento 1, Magento 2, OpenMage, Mage-OS, and MahoCommerce.
Requires
- php: ^8.2
- ext-mbstring: *
- composer/semver: ^3.0
- symfony/console: ^5.4 || ^6.0 || ^7.0 || ^8.0
- symfony/process: ^5.4 || ^6.0 || ^7.0 || ^8.0
- symfony/yaml: ^5.4 || ^6.0 || ^7.0 || ^8.0
Requires (Dev)
- ergebnis/composer-normalize: ^2.56
- ergebnis/license: ^2.9
- friendsofphp/php-cs-fixer: ^3.95
- mockery/mockery: ^1.6
- pestphp/pest: ^5.3
- rector/rector: ^2.8
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Corsair
Docker-powered local dev for Magento 1, Magento 2, OpenMage, Mage-OS, and MahoCommerce.
🚧 Under construction. Corsair is early (pre-1.0) and still changing fast. Expect rough edges and breaking changes between releases — pin a version in
composer.jsonrather than trackingmain, and report anything broken via issues.
Corsair is Laravel Sail for the Magento ecosystem: Docker, Docker Compose, and Bash, so you don't install PHP, MySQL, Redis, or search engines on your machine for every project. Each project gets its own isolated, reproducible environment, matched to whatever PHP, database, and services it actually needs.
Quickstart
composer require maco-studios/corsair --dev vendor/bin/corsair install vendor/bin/corsair up -d
vendor/bin/corsair install detects your platform from composer.json, writes compose.yaml and .env, and builds the application image. From there, vendor/bin/corsair aliases docker compose:
vendor/bin/corsair ps # inspect running services vendor/bin/corsair logs -f # follow service logs vendor/bin/corsair down # stop the environment
Plain docker compose ... commands work the same, if you prefer them.
Requirements
- Docker Engine with Compose, or Docker Desktop with Compose enabled
- Git
- Linux, macOS, or Windows with WSL2
Platform guides
New to Corsair? Start with the documentation home and choose the tutorial for Adobe Commerce / Magento 2, Mage-OS, OpenMage, or MahoCommerce.
Already have a project? Use the existing-project guide. Support is project-specific; see the platform reference and compatibility reference.
Documentation
The documentation is organized for Zensical using the Diátaxis framework. Preview or build it with zensical serve and zensical build:
- Tutorials — complete learning paths for each supported platform
- How-to guides — installation, adoption, services, development, customization, Xdebug, Dev Containers, and troubleshooting
- Reference — CLI, platforms, services, environment variables, generated files, and compatibility
- Explanation — architecture, detection, runtime selection, workers, and customization decisions
Contributing
Bug reports and compatibility improvements are welcome. Include your host OS, Docker/Compose versions, Magento version, and PHP version — never store credentials or other secrets.
Support
If Corsair saves you time, consider buying me a coffee.
Credits and attribution
Corsair includes portions adapted from the following MIT-licensed projects:
- Laravel Sail — originally created by Taylor Otwell and Chris Fidao. The testing-database scripts are based on work by Jess Archer, with subsequent contributions from Bram, Tom Coonen, and Hafez Divandari. See the Sail license.
- docker-magento — PHP Xdebug configuration based on the work maintained by Mark Shust and licensed under the copyright of Mage Inferno. See the docker-magento license.
The relevant resource files also contain inline attribution notices. Corsair's own code remains available under the MIT license.
