Development environment setup frustrates teams. Laravel Sail provides Docker-based environment with zero configuration. At ZIRA Software, Sail standardizes development across all team members.
Installation
New Laravel project:
curl -s "https://laravel.build/my-app" | bash
cd my-app
./vendor/bin/sail up
Existing project:
composer require laravel/sail --dev
php artisan sail:install
./vendor/bin/sail up
Basic Usage
# Start services
./vendor/bin/sail up
./vendor/bin/sail up -d # Detached mode
# Stop services
./vendor/bin/sail down
# Artisan commands
./vendor/bin/sail artisan migrate
./vendor/bin/sail artisan make:model Post
# Composer
./vendor/bin/sail composer install
./vendor/bin/sail composer require package/name
# NPM
./vendor/bin/sail npm install
./vendor/bin/sail npm run dev
# Testing
./vendor/bin/sail test
./vendor/bin/sail artisan test
Shell Alias
# Add to ~/.bashrc or ~/.zshrc
alias sail='./vendor/bin/sail'
# Now use:
sail up
sail artisan migrate
Services
Available services:
- PHP (8.0, 8.1, 8.2)
- MySQL
- PostgreSQL
- Redis
- Memcached
- Meilisearch
- Mailhog
- Selenium
Database Access
# MySQL CLI
sail mysql
# PostgreSQL CLI
sail psql
# Redis CLI
sail redis
Customization
# Publish docker files
sail artisan sail:publish
# Customize docker-compose.yml and Dockerfile
Conclusion
Laravel Sail eliminates environment setup complexity. Docker-based consistency ensures same environment for all developers.
Need development environment setup? Contact ZIRA Software for DevOps consultation.