Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Dockerfile Laravel Laravel Package

fly-apps/dockerfile-laravel

Fly.io's Dockerfile for Laravel gives Laravel applications a production-ready container setup with sensible defaults for PHP, Composer, frontend assets, and deployment. Simplify Docker builds, reduce configuration, and ship to Fly.io faster with a reliable, out-of-the-box Dockerfile.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for containerization: fly-apps/dockerfile-laravel is a maintained Dockerfile generator for Laravel apps. It lets the team ship production-grade PHP/Composer/Node/Nginx images without owning a bespoke Dockerfile. Adopting it is a "buy" decision on the undifferentiated plumbing of container builds, freeing engineering to focus on product features.
  • Feature feasibility for Phar-dependent tooling: Release 1.0.9 adds Phar support to generated images. This directly unblocks or de-risks features and workflows that depend on PHP phar artifacts — for example, Composer running from a phar, PHPUnit/Deployer/PHP-Scoper phars, self-updating CLI tools, or any vendor tool distributed as a .phar. If the roadmap includes such tooling in containers, this release is the enabling change.
  • Deployment target decisions: The package is purpose-built around Fly.io's deployment model (it is the fly-apps org's generator). Choosing it is effectively a vote for Fly.io as the hosting platform; PMs should treat adoption as coupled to that infrastructure decision.
  • Roadmap sequencing: A patch-level release adding an extension is low-risk and can be pulled in without a migration project. It is a good candidate to fold into the next routine dependency bump rather than a dedicated sprint item.
  • Use cases it serves well: standard Laravel web apps and APIs, queue workers and scheduled tasks running in the same image family, apps needing a reproducible multi-stage build (PHP-FPM + Nginx), and teams standardizing on a single Dockerfile across environments.
  • Risk posture: The change surface in 1.0.9 is additive (extension inclusion plus a version bump), so it does not represent a compatibility or migration decision — it widens the set of viable use cases rather than constraining them.

When to Consider This Package

Consider adoption when:

  • The product is a Laravel application deployed to Fly.io (or a comparable container platform) and the team wants a maintained, opinionated Dockerfile rather than a hand-rolled one.
  • Engineering needs a production-ready multi-stage image — PHP runtime, Composer installs, front-end asset builds, and a web server — without dedicating a squad to Dockerfile maintenance.
  • The app or its CI/CD and operational tooling relies on PHP phar binaries, which 1.0.9 now supports out of the box. Prior to this release, teams in that situation would have needed a custom Dockerfile layer.
  • The organization values upstream-maintained build recipes over bespoke infrastructure and is comfortable tracking a fast-moving 1.x line (this is release 1.0.9, indicating frequent patch cadence).
  • You want one Dockerfile convention across services (web, worker, scheduler) to reduce operational drift.

Look elsewhere when:

  • The deployment target is not Fly.io and the team needs a generator tuned for Kubernetes, AWS ECS, Laravel Vapor, or a PaaS with its own buildpack (Heroku, Laravel Cloud). The package's defaults encode Fly-specific assumptions and may create friction.
  • The product requires non-standard runtime topology — multiple PHP versions in one cluster, unusual extensions beyond what the generator exposes, or heavily customized base images. At that point a bespoke Dockerfile is usually cheaper than fighting the generator.
  • The team needs a stable, slow-moving dependency with long support windows. A 1.x package publishing frequent patches is fine for most, but regulated or long-LTS environments should weigh upgrade overhead.
  • You need a library rather than infrastructure scaffolding — this package produces build artifacts, not application code, and offers no runtime value to the app itself.
  • Container strategy is already solved and healthy; replacing a working Dockerfile introduces risk with no corresponding product benefit.

How to Pitch It (Stakeholders)

One-liner: This is a small, actively maintained package that generates our Laravel production Docker images, and its latest release closes a gap that was forcing custom container work.

For executives: We get a maintained, reproducible container build without spending engineering time on Dockerfile upkeep — infrastructure we'd otherwise have to own and patch ourselves. The 1.0.9 release adds Phar support, which removes a blocker for shipping PHP tooling inside our containers. Cost is low (a dependency, not a platform), and the change is additive, so there's no migration risk. The one strategic caveat: it is optimized for Fly.io deployments, so adoption should be read as consistent with — not independent of — our hosting choice.

For engineering: Version 1.0.9 is a low-risk patch that adds Phar extension support to generated images and bumps the package version; there are no breaking changes or deprecations. It expands what we can run in-container (Composer-as-phar, PHPUnit, Deployer, PHP-Scoper, and similar tooling) without hand-editing Dockerfiles. Recommended action is to bump the dependency in the next routine maintenance window and verify any phar-dependent tooling in a staging build. Watch the patch cadence and pin versions in CI for reproducibility.

Recommendation: Adopt, conditional on Fly.io (or a compatible container platform) remaining our deployment target. Treat this release as an enabler for tooling-dependent roadmap items rather than a standalone initiative.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource