Deploy Laravel applications to Laravel Cloud from the command line.
This project is sponsored by Bifrost - the fastest way to compile and distribute your NativePHP apps.
composer require nativephp/laravel-cloud-deployPublish the configuration file:
php artisan vendor:publish --tag=cloud-configThis will create a config/cloud.php file where you can configure your deployment settings.
Add your Laravel Cloud API token to your .env file:
LARAVEL_CLOUD_TOKEN=your-api-token
LARAVEL_CLOUD_REPOSITORY=owner/repo
LARAVEL_CLOUD_REGION=us-east-2Generate an API token at: https://cloud.laravel.com/org/my-team/settings/api-tokens
us-east-2(Ohio)us-east-1(N. Virginia)eu-west-2(London)eu-central-1(Frankfurt)ap-southeast-1(Singapore)ap-southeast-2(Sydney)
php artisan cloud:deployphp artisan cloud:deploy production| Option | Description |
|---|---|
--skip-deploy |
Configure infrastructure without initiating a deployment |
--force |
Skip confirmation prompts |
--dry-run |
Show what would be done without making changes |
Preview changes without deploying:
php artisan cloud:deploy --dry-runConfigure infrastructure only (useful for initial setup):
php artisan cloud:deploy --skip-deploy --forceDeploy production with no prompts:
php artisan cloud:deploy production --forceThe config/cloud.php file allows you to define:
- Application settings: Name, repository, region
- Environments: Production, staging, or custom environments
- PHP/Node versions: Specify versions for each environment
- Build & deploy commands: Custom build and deployment scripts
- Server configuration: Web server, Octane, hibernation settings
- Network settings: Caching, response headers, firewall rules
- Instances: Compute resources with scaling configuration
- Background processes: Queue workers and custom processes
- Domains: Custom domains with SSL and WWW redirects
- Environment variables: Global and per-environment variables
See the published config file for detailed examples and documentation.
The package maintains a .laravel-cloud.json file in your project root to track deployed infrastructure IDs. This
allows subsequent deployments to update existing resources rather than creating duplicates.
Add it to git and share it with your team or CI tool.
- PHP 8.2+
- Laravel 11.x or 12.x
MIT License. See LICENSE for details.