Level Up Your Java Container Images
summary
Docker images are just tarballs of file systems composed of layers (lower/upper/merged) and containers run as regular Linux processes using namespaces and cgroups; older JVMs ignore cgroup limits so Java 11 is container aware while Java 7 / early 8 can trigger OOM kills. Market shift shows containerd usage rose 18%→33% in recent reports and Docker itself builds on containerd/runC under the OCI. Common failures: running as root, no resource limits, image bloat—use multi-stage builds, nonroot users, private registries (JFrog offered), and regular updates.
AI-written summary · about
chapters (24)
- 0:00Introduction
- 1:52QR Code
- 2:17Melissas Background
- 3:15Agenda
- 4:04Why use containers
- 4:40Bananas
- 6:29Container History
- 7:31Linux Container History
- 10:38Systig Container Report
- 12:39Sysdig Container Report
- 13:43What is Docker
- 14:37What do we need
- 19:25What does a container look like
- 21:32Docker Info
- 22:22Docker Images
- 24:24Containers
- 25:40Running as Root
- 27:06Resource Limits
- 27:47Security Updates
- 29:00Container Awareness
- 30:28Image Bloat
- 33:14Managing Your Images
- 35:48Raffle
- 36:08Wrap Up
related talks
49mJava and Containers Make it Awesome
40mUnpacking the Container: A Deep Dive into Virtualized Container Technology
49mJava Container Mastery: Optimizing Images Across Build Tools
47mJava inside Application Containers, System Containers and VMs
50mCompressing Java resource usage in containers: 80% of results in 20% of time without OOMs
46mJava in a World of Containers
45mJVMs in Containers, Towards a Perfect Symbiosis!
01h 02mOptimizing Containerized #Java Apps with Jib, #GraalVM, CDS, & #CRaC
