DEV Community

Omar Alalwi
Omar Alalwi

Posted on • Originally published at digitalwiki.info

Laravel Deployer Free package for laravel and nodejs apps Deployment

Presenting Laravel Deployer, an advanced package that transforms the deployment process for both Laravel and Node.js applications. This cutting-edge solution ensures smooth deployment, zero downtime, and provides extensive support for various environments and branches, making the deployment of your Laravel apps a breeze.

Image description

Key Features of Laravel Deployer:

  1. Flexibility for Customization:

    • Customize your deployment process to suit your specific needs.
  2. Non-Root User Friendly:

    • No requirement for root user access if PHP restart is not enabled.
  3. Branch Deployment Ease:

    • Deploy on a specific branch effortlessly.
  4. Custom Extra Commands:

    • Add your own custom extra commands to enhance flexibility.
  5. Laravel Deployment with Node.js:

    • Deploy Laravel applications seamlessly with Node.js, offering multiple options.
  6. Node.js Integration:

    • Deploy Laravel apps with Node.js integration as required.
  7. Custom PHP Restart Commands:

    • Add your own OS command to restart PHP.
  8. SSH Key Verification:

    • Check for SSH key existence and generate it on GitHub if not present.
  9. Compatibility:

    • Support for all PHP and Laravel versions from 7.4 to 8.3.
  10. Free Forever:

    • Enjoy the benefits of Laravel Deployer without any cost.

Installation Steps:

  1. Install the package:
   composer require omaralalwi/laravel-deployer
Enter fullscreen mode Exit fullscreen mode
  1. Publish the configuration file:
   php artisan vendor:publish --tag=laravel-deployer-config
Enter fullscreen mode Exit fullscreen mode
  1. Set up GitHub SSH connection and generate the key using:
   php artisan deploy:key-generate your_github_email@domain.com
Enter fullscreen mode Exit fullscreen mode

*Configuration Options:*

  • DEPLOY_BRANCH:

    • Default Value: "master"
  • DEPLOY_PATH:

    • Default Value: Project directory in Linux. For other OS, set it manually in ENV.
  • DEPLOY_BUILD_NPM:

    • Default Value: false
  • DEPLOY_RESTART_HORIZON:

    • Default Value: false
  • DEPLOY_RESTART_PHP_FPM:

    • Default Value: false
  • DEPLOY_RESTART_PHP_FPM_COMMAND:

    • Default Value: null
  • DEPLOY_SUDO_USER:

    • Default Value: null
  • DEPLOY_SUDO_USER_PASSWORD:

    • Default Value: null

*Getting Started:*

Run the following command to initiate deployment:

php artisan deploy:publish
Enter fullscreen mode Exit fullscreen mode

Explore more about Laravel Deployer in the package documentation.

For detailed information and access to the package, visit the GitHub repository.

Top comments (0)