Level Up Your Java Containers

A presentation at St. Louis Java User Group Meetup in in St. Louis, MO, USA by Melissa McKay

Your Dockerfile is written, your Java app is packed into an image, and your containers run successfully. Do you have an uneasy feeling that you’ve missed something or that something might be wrong? This talk will leave you with the knowledge you need to be confident in your Java container images.

This session is a must for any Java developer under the pressure of high-performance expectations and tight deadlines in a cloud-native architecture. To that end, we have learned to make use of a variety of tools and abstractions to help move us along the path to production quickly and effectively. There is a rapidly and continuously evolving ecosystem that sustains the forward march of microservice architectures and their deployments. But, there’s a dark side to using these tools in a rush to the finish line. Without taking a step back to understand what’s happening below the surface, we can find ourselves stumbling in areas concerning quality, efficiency, and even security.

For many of us, the first step was to simply get our Java application up and running as expected within a container, and Docker was our tool of choice. Now it’s time to review what you have implemented and make some improvements. Containerizing our Java applications is fairly straightforward with the latest container aware versions, but there are still pitfalls that can trip you up if you don’t know where to look. This session will dive into the best practices of packing your Java container images efficiently and effectively for the trip to production. You will learn valuable information about cloud-native tools available today for building and running containers (including Docker alternatives), container image formats, image storage concerns, and common gotchas to avoid.