PHPackages                             downtoworld/laravel-devops - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [DevOps &amp; Deployment](/categories/devops)
4. /
5. downtoworld/laravel-devops

ActiveLibrary[DevOps &amp; Deployment](/categories/devops)

downtoworld/laravel-devops
==========================

Laravel Cloudflare-Tunnels Ready Production Docker-Compose

v0.7.6(2y ago)161.1k2MITPHPPHP &gt;=7.4

Since Nov 2Pushed 1y agoCompare

[ Source](https://github.com/DownToWorld/laravel-devops)[ Packagist](https://packagist.org/packages/downtoworld/laravel-devops)[ RSS](/packages/downtoworld-laravel-devops/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (10)Dependencies (3)Versions (13)Used By (0)

### Installation

[](#installation)

```
composer require "downtoworld/laravel-devops:*"

```

Publish the **required** files:

```
php artisan vendor:publish --tag=laravel-devops

```

### Example with Portainer and Cloudflare Tunnels

[](#example-with-portainer-and-cloudflare-tunnels)

- Create the Docker network `cloudflared` (bridge)
- Deploy the Docker container as specified @ Cloudflare -&gt; Zero Trust -&gt; Access -&gt; Tunnels -&gt; Create a tunnel (**Additionally**: attach the container to the previously created network by specifying `--network cloudflared`)
- Create a Git-repo based Stack @ Portainer webUI
    - At **Compose path** specify: `docker-compose-prod.yml`
    - Enable **GitOps updates**
    - Fill the required environment variables:
        - `APP_NAME`: *several Laravel configurations use it for prefixing*
        - `APP_KEY`: *can be generated on your local environment*
        - `APP_DOMAIN`: domain of the app in production Example: *yourdomain.com*
        - `APP_DOCKER_STACK`: the name of the stack you are configuring @ Portainer. Example: *mystack*
        - \[*You can also configure here any Laravel env variables like `APP_NAME` or `APP_DEBUG`*\]
    - *Deploy the stack*
- Add public hostnames to the tunnel @ Cloudflare:
    - **Webpage (Nginx)**: *yourdomain.com* HTTP *mystack*-nginx-1:80
    - **S3 Storage (Minio)**: *cdn.yourdomain.com* HTTP *mystack*-minio-1:9000
    - **Websocket server (Soketi)**: *ws.yourdomain.com* HTTPS (tls-check-disabled and ws-enabled options) *mystack*-soketi-1:6001

### Accessing private services (MySQL, Redis, etc) locally

[](#accessing-private-services-mysql-redis-etc-locally)

- Run `docker run -d --name cloudflare-docker-dns --restart always --network cloudflared -e DNS_FORWARDER=127.0.0.11 cytopia/bind` and copy it's assigned IP (*your-assigned-ip*) from Portainer UI.
- Go to Portainer networks and copy `cloudflared` assigned IPV4 IPAM Subnet (*your-network-ip-range*)
- Go to Cloudflare -&gt; Zero Trust -&gt; Access -&gt; Tunnels and configure a new `Private network` at your tunnel with `CIDR`: *your-network-ip-range*
- Go to Cloudflare Zero Trust Settings -&gt; WARP Client -&gt; Configure "Default" Device Settings:
    - Add a Local Domain Fallback: `domain`: cloudflared `DNS Servers`: *your-assigned-ip*
    - Set Split Tunnels to `Include IPs and domains` and add `Selector`: IP Address `Value`: *your-network-ip-range*
- Give your email access at Cloudflare Zero Trust Settings -&gt; WARP Client -&gt; Device enrollment permissions.
- Install [Cloudflare WARP](https://1.1.1.1/) on your computer, connect it to your Zero Trust org and enable it.
- Now you can access all your cloudflared-network-connected docker containers locally as `mystack-service-1.cloudflared:port`

The list of services you can access:

- *mystack*-mysql-1.cloudflared:3306 `User`: root `Password`: secret
- *mystack*-redis-1.cloudflared:6379 no-password
- http://*mystack*-seq-1.cloudflared
- http://*mystack*-minio-1.cloudflared:8900
- http://*mystack*-mailpit-1.cloudflared:8025
- http://*mystack*-meilisearch-1.cloudflared:7700

### Environment variables

[](#environment-variables)

Application environment variables can be managed at `docker-compose-prod.env` file.

### Queue and Scheduler

[](#queue-and-scheduler)

**Scheduler** and **Horizon** supervisors are running separately on their containers.

### PHP Versions, Extensions and INI files

[](#php-versions-extensions-and-ini-files)

8.2 version is running by default but can be switched to `8.1` or `7.4` using the `APP_PHP_VERSION` environment variable.

### Thank yous

[](#thank-yous)

- Big one for Cloudflare Team for making this possible for free.
- Portainer project made it possible with their GitOps updates.
- ServerSideUp team made it possible with their PHP Docker images.

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance27

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~8 days

Recently: every ~0 days

Total

12

Last Release

827d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/fe659dd274a405d52f9e1970bee7f49f7b29fe71bcf6d49b402d432463b4018b?d=identicon)[Rodenastyle](/maintainers/Rodenastyle)

---

Top Contributors

[![sergiorodenas](https://avatars.githubusercontent.com/u/2689890?v=4)](https://github.com/sergiorodenas "sergiorodenas (29 commits)")

---

Tags

cicloudflaredevopsdockerdocker-composelaravelproductionlaraveldevopsdockerproductionci-cddocker-composeportainercloudflare tunnels

### Embed Badge

![Health badge](/badges/downtoworld-laravel-devops/health.svg)

```
[![Health](https://phpackages.com/badges/downtoworld-laravel-devops/health.svg)](https://phpackages.com/packages/downtoworld-laravel-devops)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
