I’ve been deploying applications to production for twenty years. I wrote a new PHP Cookbook for O’Reilly. I’ve managed infrastructure at companies handling millions of simultaneous requests. I write the monthly Security Corner column for PHP Architect magazine.
I’ve seen a lot of deployment strategies come and go.
And yet — getting some apps into production on Kubernetes still takes most teams weeks. Sometimes months.
That disconnect has bothered me for years.
The Problem I Kept Seeing
Every developer I talk to has the same story, whether they write PHP or something else. They’ve mastered Docker Compose. Local development is smooth. Redis spins up with a single command. PostgreSQL just works. Life is good.
Production is different.
Suddenly they’re drowning in YAML files. Deployments, Services, Ingresses, ConfigMaps, Secrets, PersistentVolumeClaims. The terminology alone takes a week to internalize. Actually configuring it correctly? That’s a month of trial and error — if you’re lucky.
Some of the best developers I’ve known take fatal shortcuts. Production becomes a mirror of their laptop: Docker Compose or manual Bash scripts running the application through brute force.
I watched this happen at company after company. Smart developers, talented teams, burning weeks of runway on infrastructure instead of building features their users actually needed.
Why I Built Displace
The gap between docker-compose up and production Kubernetes shouldn’t require a platform engineering team.
That’s the premise behind Displace. It’s a CLI tool and infrastructure platform that translates Docker Compose concepts into production-ready Kubernetes — without requiring you to become a Kubernetes expert first.
You build what you need. Displace handles the deployment.
It’s a wrapper around industry-standard tools that lowers the learning curve to launching a production application. When you need it, Displace makes the process of rolling out code easy. When you’re ready to call yourself an SRE1Site Reliability Engineer and go it alone – you can still use the same underlying tools!
Here’s what that looks like in practice:
I recently built a new project: DailyMedToday. It’s a Laravel application with PostgreSQL, Redis, queue workers, and a nightly backup CronJob. Locally, I use Docker Compose to test my changes on http://localhost. But a quick command with Displace launches it to my production Kubernetes cluster.
The migration from one to the other took an afternoon.
Not weeks.
The same patterns work for WordPress. For any PHP application, really. And increasingly for non-PHP workloads too.
What This Means for PHP Developers
I’m presenting two talks at PHP Tek in May. One covers the conceptual bridge from Docker Compose to Kubernetes. The other demonstrates semantic search and embeddings in Laravel — using DailyMedToday as a live example.
Both talks exist because I’ve learned that PHP developers don’t need another 40-hour Kubernetes course. They need someone to show them the translation layer. Docker Compose concepts map directly to Kubernetes primitives. Services are still Services. Volumes become PersistentVolumeClaims. The mental model transfers, if someone shows you how.
That’s what Displace does automatically. And it’s what I’ll be teaching at Tek.
The Consulting Angle
Beyond the tool itself, I offer hands-on consulting for teams that want to make this transition. Whether you’re migrating an existing Laravel monolith, deploying WordPress at scale, or building something entirely new — I can help.
Working with me lets you get to production Kubernetes in days instead of months.
The PHP ecosystem deserves better infrastructure tooling. That’s what I’m building.
If you’re heading to PHP Tek, come find me. If you’re struggling with Kubernetes adoption, take a look at Displace. The CLI can help with core concepts for free; when you’re ready to graduate to the cloud I offer simple pricing for additional workflows and tools.
If you just want to follow along as I build this in public, I active on both X and Mastodon.
What infrastructure problems are slowing your team down?
- 1Site Reliability Engineer