deployer
The PHP deployment tool with support for popular frameworks out of the box
Deployer is a PHP command-line tool that automates pushing code to remote servers with zero-downtime deployments, automatic server provisioning, and ready-made recipes for popular PHP frameworks.
Deployer is a command-line deployment tool for PHP projects. It automates the process of pushing your code from a local machine or CI pipeline to a remote server, handling the steps that would otherwise require manual SSH commands. Rather than logging into a server by hand and running update commands each time you release a change, Deployer runs a defined sequence of tasks for you. The README is intentionally brief, pointing readers to the project website at deployer.org for full documentation and configuration guides.
The tool is built around three main features. The first is automatic server provisioning, which means Deployer can configure a fresh server to have the right software and settings installed, not just deploy code to a server that already exists. The second is zero downtime deployments: the tool prepares the new version of your application in a separate directory and then switches a symlink to point at it, so the live site never serves partially updated files to visitors. The third is a library of ready-to-use recipes for popular PHP frameworks, which means you can often get a working deployment pipeline for a project without writing everything from scratch.
For teams using GitHub Actions, there is an official GitHub Action that runs Deployer as part of a continuous integration or delivery workflow. A Docker image is also available for those who prefer containerized tooling. The project is released under the MIT license. Because the GitHub README is sparse, anyone wanting to learn about specific configuration options, supported frameworks, or task definitions should visit the full documentation at deployer.org.
Where it fits
- Deploy a Laravel or Symfony app to a VPS from the command line with zero downtime using built-in framework recipes.
- Set up a fresh server with the correct PHP version and web server config using Deployer's automatic provisioning.
- Trigger PHP deployments automatically from a GitHub Actions workflow whenever you push to main.
- Roll back a failed deployment to the previous working release with a single Deployer command.