Dino Apps Deserve Love Too!
summary
Describes containerizing a legacy Java web app without changing a line of code using a four-step process — build with Maven inside Docker, put builds in a CI pipeline, create a multi-stage Dockerfile runtime (Tomcat 7 → Tomcat 8 → Alpine experiments), and run end-to-end Selenium tests in containers. Uses docker-compose with docker-compose --exit-code-from to gate CI, spins up LDAP/MySQL/CAS mocks and a standalone Chrome debug Selenium container, finds 26 critical CVEs then reduces them to 5, and demonstrates successful read-only rootfs + tmpfs testing.
AI-written summary · about
chapters (11)
- 0:00Start
- 4:46The Migration Journey
- 5:32Pre-Migration Notes
- 11:36Put in a pipeline
- 13:02Pipeline Feedback in GitLab
- 22:13Testing with Docker
- 28:28Rebasing our App . As an example, by simply changing the FROM command in our Dockerfis. we can move our app to Tomcat
- 32:17Results
- 33:11Swapping to an Alpine base...
- 34:23Running our app in read-only mode
- 35:26A quick note about using read-only . This makes the filesystem of the individual container read only
related talks
46mContainerizing Legacy Applications
43mFrom a legacy monolith to a scalable SaaS application
59mModernizing Legacy .NET Apps with Docker
31mStrategies to "Kubernetify" Legacy Applications
42mTilling the Brownfield: A Container Story
48mTo JAR Hell And Back - A Live Migration to the Java 9
54mCtrl-Alt-Del: learning to love legacy code
30mApplication Modernization Using Cloud Strangler Pattern and DevOps Best Practices
