Containerizing Laravel Applications

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • quickstart-basic

    Discontinued A sample task list application.

  • For this blog post, we will containerize the sample Laravel task-list application provided on GitHub. This project was written against a reasonably old version of Laravel and has since been archived. However, working with this codebase requires that we address a number of requirements commonly found in production and legacy code bases, such as using specific versions of PHP, database migrations, port mappings, and running integration tests.

  • setup-buildx-action

    GitHub Action to set up Docker Buildx

  • We then use the docker/setup-buildx-action action to initialize an environment to build Docker images:

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • build-push-action

    GitHub Action to build and push Docker images with Buildx

  • Finally, we use the docker/build-push-action action to build the Docker image. By setting the with.push property to true, the resulting image will be pushed to DockerHub.

  • quickstart-basic

    A sample task list application. (by mcasperson)

  • You can find a fork of the sample application repository that contains the GitHub Actions workflow above here.

  • hub-feedback

    Feedback and bug reports for the Docker Hub

  • The run argument instructs Docker to run the Docker image passed as the final argument, which is mysql. As we noted in the introduction, every major tool provides a supported Docker image, and MySQL is no exception. The MySQL image has been sourced from the default Docker registry called DockerHub, which provides the repository mysql.

  • starter-workflows

    Accelerating new GitHub Actions workflows

  • There are any number of CI platforms that can be used to build Docker images. For this post, we'll make use of GitHub Actions.

  • Dokku

    A docker-powered PaaS that helps you build and manage the lifecycle of applications

  • In addition to the major cloud providers, you can deploy containers to Heroku, Dokku, Netlify, and many more.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • apprunner-roadmap

    This is the public roadmap for AWS App Runner.

  • If there is one benefit to containerizing your applications, it is the incredible range of platforms that they can be deployed to. You can deploy containers to Kubernetes or any of the managed Kubernetes platforms, such as Azure Kubernetes Service (AKS), AWS Elastic Kubernetes Service (EKS), or Google Kubernetes Engine (GKE). Azure also has Container Instances, while AWS has App Runner, and Google has Cloud Run.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts