From a legacy monolith to a scalable SaaS application
summary
A legacy Java monolith (Operational Decision Manager) becomes a configurable, scalable SaaS: webapps are packaged as separate Docker images, deployed with Docker Compose then Docker Swarm, and later migrated to Kubernetes using init containers to handle startup order, dedicated liveness/readiness endpoints and ConfigMaps for runtime configuration. Deployment is managed with Helm charts and CI runs daily; an internal Docker registry guards against broken upstream images, and multi-stage builds enable multi‑arch support (Power8). The product runs in production on IBM Cloud.
AI-written summary · about
chapters (25)
- 0:00Introduction
- 6:36Docker
- 14:21Java
- 15:33Docker Swarm
- 16:43Kubernetes
- 16:57Who knows Kubernetes
- 17:26Container orchestration
- 18:18Kubernetes deployment
- 19:22Kubernetes dependencies
- 20:16Container example
- 20:46High availability
- 22:03Configuration
- 24:15Home Charts
- 26:58Helm
- 28:02Switching to production
- 28:19Cloud Platform
- 29:11Targeted Architecture
- 30:52Multistage builds
- 32:21In production
- 33:53Recap
- 34:27Take aways
- 34:59Customize
- 35:26Use existing technologies
- 36:17Moving to the cloud is not just integration work
- 37:45Questions
related talks
25mMigrating a monolith to Cloud-Native and the stumbling blocks that you don’t know about
54mTransform a Legacy Application with Kubernetes and Istio
45m12-Factor, Cloud Native Enterprise Java Applications
20mApplication Modernization: From Concept to Kubernetes
30mApplication Modernization Using Cloud Strangler Pattern and DevOps Best Practices
42mTilling the Brownfield: A Container Story
31mMigrating a monolith to Cloud-Native (and the stumbling blocks)
48mThe Journey of a strongly coupled Monolith into the Cloud Land
