Page cover

📗Deploy a Laravel App on Clouddley Triggr

Learn how to deploy a Laravel app on Triggr.

In this guide, we'll learn how to deploy a Laravel application on Triggr. Before that, let’s talk about what Clouddley Triggr is. Clouddley Triggr is a zero downtime application deployment tool that auto-detects your runtime and deploys your application to your server, virtual machines, and bare metal. Let's get started!

Prerequisites

Deploy the Laravel Application

Optimize your Codebase for Deployment

Before the Laravel application deployment, with the way Triggr is designed, you would need to set up specific requirements, which include specifying the required PHP extensions and web server for your application.

  • PHP Extensions

In Laravel, PHP extensions add extra functionalities and improve performance. Laravel handles most extensions automatically to ensure the required ones are installed on your host server for optimal application performance. To set this up on Triggr, you need to;

  • Create a .php.ini.d folder in the application’s root directory.

  • Create a custom .ini file in the .php.ini.d folder.

For this application, we created a file custom.ini with the necessary extensions needed for the application to run smoothly.

custom.ini
extension=fileinfo.so
extension=curl.so
extension=openssl.so

This enables the required extensions for this application. You can read more about enabling extensions here.

  • Web server

We will be deploying this application with Nginx, a popular choice for deploying Laravel applications due to its speed, security features, ease of configuration, and compatibility with PHP-FPM. To configure this, we will be creating a Toml file project.toml in the application root directory.

TOML is a configuration file format language that is intended to be minimal and easy to read. TOML stands for “Tom’s Obvious, Minimal Language,” which refers to the creator Tom Preston-Werner.

From the Toml Website

project.toml
[[build.env]]
name='BP_PHP_SERVER'
value='nginx'
[[build.env]]
name='BP_PHP_WEB_DIR'
value='public'

This defines the configuration settings that can be assessed during the build process. Once you are done, you are ready to deploy your application on Triggr.

Accessing Clouddley Triggr Apps

  • Open your web browser, log in to your Clouddley account

  • Navigate to Triggr Apps and click on Deploy App

Image of Triggr Apps dashboard.
Accessing Triggr Apps

Step 1: Configure Service

  • Choose your Git hosting service; either GitHub or Bitbucket. For this tutorial, we will be using GitHub.

  • Click on Continue with GitHub

Configuring Git hosting service during app deployment on Triggr Apps.
Choose your Git hosting service

Step 2: Configure Git

  • To connect your GitHub user or organization account, click the Select username/organization dropdown and Add GitHub account.

  • Select your repository and the branch from the dropdown list or quickly search.

  • Click on NEXT

Configuring the Git repository during app deployment on Triggr Apps.
Setup the Laravel application repository on Triggr

Step 3: Configure your Virtual Machine

  • To configure your VM, insert your VM hostname or IP address, VM user, and the VM port for SSH access.

  • Use the Clouddley CLI (recommended) or connect via SSH to verify.

The Clouddley CLI is a command-line tool that allows you to interact with the Clouddley Platform from your terminal.

  • Open the command line of the remote VM you want to configure to Clouddley and install Clouddley CLI by running the command:

curl -L https://raw.githubusercontent.com/clouddley/cli/main/install.sh | sh
  • To install Triggr, run the command:

clouddley triggr install

Using the CLI, you can deploy resources, manage configurations, and automate tasks efficiently.

  • Click on Verify. This verifies the connection

  • Click on NEXT

Configuring the virtual machine during app deployment on Triggr Apps.
Configuration of virtual machine on Triggr

Step 4: Configure app settings

Insert the name of the application and its port.

Configuring App settings (name and port) during app deployment on Triggr Apps.
Configure the App name and port

The firewall of the virtual machine should allow access to the application port.

Step 5: Configure Environment Variables

  • To add environment variables, click on Add Variable

  • Choose an ENV mode: either a single variable or import variables. Learn more here.

Image showing the single variable ENV mode on Triggr Apps
Single variable ENV mode
  • Add the key-value pairs and Click on Save

  • Click on NEXT

Image showing environment variables added during app deployment on Triggr Apps.
Adding environment variables

Triggr deploys your application as a container; therefore, ensure you specify the environment variables.

Step 6: Setup Notifications (optional)

  • To configure the notification settings of the application, click on Add Alert

  • Select the Alert type. For this tutorial, we will set up Email alerts.

  • Toggle on the buttons of the deployment event (failed, timed out, or success) you want to be notified of.

  • Enter the Email address where you want to receive alerts. (You can add multiple email addresses)

  • Click on Save

  • Click on Deploy

A gif showing how to set up notifications on Triggr Apps.
Notifications set up and creation of Laravel application on Triggr

Step 7: Test and Verify the app

  • Click on Go to Dashboard. Your app will be visible on the Triggr apps dashboard.

  • After the app deployment is complete, the app status changes from deploying to running

An image of the overview of a successfully deployed Laravel application on Triggr Apps.
Laravel application dashboard overview
  • Click on 🌐 Website at the top right corner of the page, this opens the URL of the deployed application in your browser.

  • You can test the application functionalities.

An image of the Laravel application running on Triggr on the web.
Laravel application running from Triggr on a cloud virtual machine

You have successfully deployed a Laravel application on Triggr. You can manage it directly from the app dashboard by clicking the three dots (...) at the top-right corner to access Edit, Instant Rollback, Scale, Pause, and Delete options.

Furthermore, you can switch to different tabs on the application dashboard to perform the following actions; view your deployment history, view or download logs, add a custom domain, and view the environment variables.

Conclusion

Congratulations🎉 on successfully deploying a Laravel application on Clouddley Triggr. You can find the source code for this application here. You can also check out how different frameworks can be deployed on Clouddley Triggr in our how-to guides.

Last updated

Was this helpful?