A fork of Lorisleiva, Laravel Deployer improved to support php8 giving Artisan the power of zero-downtime deployment.

dev-master 2021-11-24 19:55 UTC

This package is auto-updated.

Last update: 2022-05-24 21:16:09 UTC


This is a fork of lorisleiva/laravel-deployer improved to support php 8 and deployer 7

🚀 Laravel Deployer

Actions Status

Laravel Deployer is a lightweight wrapper of giving Artisan the power of zero-downtime deployment.

Console showing php artisan deploy

Documentation button Video tutorials button

✨ Features

  • Simple setup process
  • Zero downtime deployments
  • Ready-to-use tasks for Laravel
  • Choose your deployment strategy
  • Agentless, it's just SSH
  • Something went wrong? Rollback to the previous release

1️⃣ Installation

composer require jeremiealvin/laravel-deployer

2️⃣ Configuration

In order to generate your deployment configuration file, simply run:

php artisan deploy:init
  • It will ask you a few questions to help you get started and generate a config/deploy.php file.
  • Read more about the available options, tasks, strategies; about how to customize your hosts, your deployment flow and much more in the documentation.

3️⃣ Deployment

When you’re ready to deploy, run:

php artisan deploy
  • If anything goes wrong during the deployment flow, the release will be discarded just like nothing happened.
  • Because we are using zero-downtime deployments, make sure your server’s root path points to the {{deploy_path}}/current symlink.
  • If your project has already been deployed, before using Laravel Deployer, you might be interested in this first deployment strategy.

📜 Available commands

deploy                # Deploy your application
deploy:configs        # Print host configuration
deploy:current        # Show current paths
deploy:dump <task>    # Display the task-tree for a given task
deploy:hosts          # Print all hosts
deploy:init           # Generate a deploy.php configuration file
deploy:list           # Lists available tasks
deploy:rollback       # Rollback to previous release
deploy:run <task>     # Execute a given task on your hosts
logs                  # Dump the remote logs of your application
ssh                   # Connect to host through ssh