Changelog
All notable changes to laravel-compose will be documented in this file.
1.1.0 - 2026-10-08
What's Changed
- Drop Laravel 11 support
- Bump minimum
illuminate/*requirements from^11.0|^12.0|^13.0to^12.69|^13.30 - Add the package banner and icon
Laravel 11 stopped receiving security fixes on March 12, 2026. Three advisories published since then (GHSA-5vg9-5847-vvmq, GHSA-crmm-hgp2-wgrp and GHSA-jh5r-qr3c-85q8) affect every Laravel 11 release and were fixed only in Laravel 12 and 13. The new minimums, 12.69.0 and 13.30.0, are the first releases that include all three fixes.
If your app is still on Laravel 11, Composer keeps you on 1.0.3.
Full Changelog: 1.0.3...1.1.0
1.0.3 - 2026-10-04
What's Changed
- Improve package setup
Full Changelog: 1.0.2...1.0.3
1.0.2 - 2026-09-13
What's Changed
- The operator link is now named after the stack with dashes turned into underscores, so a stack named
acme-searchis linked at/home/ploi/containers/acme_search. That's the directory Ploi's panel creates for a container of that name. Until now the link landed next to it, where the panel never looks. A server that already has a dashed link keeps it as a leftover, so delete it once. Stacks that overridelinkPath()aren't affected. - When a directory with files sits where the link should go, the deploy log and
compose:doctornow print thesudo rm -rfthat clears it. Ploi's panel leaves exactly that behind: a root-owned directory holding the panel's owndocker-compose.yml, which the deploy user can't remove. - The Ploi section of the hosting docs covers the setup in three steps: create the container in the panel with the stack's name, remove the directory the panel created, then deploy.
Full Changelog: 1.0.1...1.0.2
1.0.1 - 2026-09-12
What's Changed
- Scaffolded healthchecks probe
127.0.0.1instead oflocalhost. Inside a containerlocalhostcan resolve to::1first while the service listens on IPv4, and the check then fails with "connection refused" against a service that is fine. The compose filecompose:makewrites, the docs, and the Boost skill all follow suit. - Two copy-and-paste recipes in the docs: Meilisearch for Laravel Scout, and a local Telegram Bot API server. Each has the compose file, the stack class, the
config/services.phpblock, the.envkeys, and the deploy lines, and both were brought up against a real daemon before publishing.
Full Changelog: 1.0.0...1.0.1
1.0.0 - 2026-09-12
What's Changed
The first release. A Laravel app can now own the Docker Compose stacks it depends on and recreate them on every deploy with one command.
- A stack is a directory with a
docker-compose.ymland, usually, a smallStackclass beside it.app/Docker/*andModules/*/Dockerare found without configuration, and a directory with no class still counts. php artisan compose:redeploywrites the stack's env file from your config, refreshes the operator link, builds when asked, pulls, sweeps stale containers by name, and runscompose up. The order comes from production incidents, and the command is safe to run again.- Env files are generated, quoted the way Compose reads them, written with
0600permissions, and never shadowed by the app's own.env. compose:doctorchecks the docker binary, the Compose plugin version, the daemon, every compose file,${VAR}coverage, publishes on every interface, the link directory, and whether git ignores the env file.compose:status,compose:logs, andcompose:downcover the day-to-day, and aStacksCheckfor spatie/laravel-health watches the containers between deploys.- Remote daemons through
DOCKER_HOSTor a docker context, four lifecycle events, andCompose::fake()withassertRedeployed()and friends for tests. - Supports PHP 8.2 to 8.5 and Laravel 11 to 13.
Full Changelog: https://github.com/mozex/laravel-compose/commits/1.0.0