Containerizing Legacy Applications
summary
Eight demos containerize a file‑backed PHP forum, moving from SQLite to MySQL, Docker Compose to Swarm and then Kubernetes with Helm, reusing existing provisioning (Packer/Ansible) to build fat images. Configuration moves into configMaps + persistent volume so settings persist, and runtime templating uses consul-template with Vault to inject and rotate DB credentials. The surprising win: secret rotation and live config updates work with no app code changes.
AI-written summary · about
chapters (21)
- 0:00Intro
- 1:11This presentation is not about
- 7:29Old(er) application candidate
- 9:45Older applications live on
- 16:07Run your application in a container
- 17:20What is your "base"?
- 18:24Container tutorial assumptions
- 22:24Agentless provisioning
- 23:41Baking container images
- 24:17Modifying your build pipeline
- 24:44Additional environment configuration
- 25:09Example: boto
- 26:40Docker Compose
- 32:52Stateful configuration
- 33:11Stateless configuration
- 34:37Templating
- 35:08Helm
- 36:26Persisting configuration changes
- 38:25Config Map updates
- 38:45Dynamic configuration
- 44:11Demo 7 key points
related talks
31mStrategies to "Kubernetify" Legacy Applications
42mTilling the Brownfield: A Container Story
43mDino Apps Deserve Love Too!
43mFrom a legacy monolith to a scalable SaaS application
59mModernizing Legacy .NET Apps with Docker
30mApplication Modernization Using Cloud Strangler Pattern and DevOps Best Practices
29mFrom EC2 to Kubernetes Takeaways from a Brownfield Migration
50mHow to be cool in the age of legacy
