Talk

Dockerfiles, Buildpacks, Jib and more ... what's the best way to run your Java code in Containers?
Conference (BEGINNER level)
Globe
A typical workflow in a modern software dev project often looks like: Build code, put the built artifact into a container image, put the container image into a registry and deploy to Kubernetes. Each step has it’s own requirements and pitfalls alike. The overall goal is most often to bake those steps into easily repeatable pipelines and enable a high degree of automation and standardization.

Dockerfiles seems to be the choice with the highest adoption when it comes to containerizing code artefacts. However most Dockerfiles (and also most sample's of Dockerfiles you find in tutorials) do not exploit it to the full potential.
There are a lot of improvements to be done in how to build and optimize for VM-based applications.

The talk will give deeper insights by comparing (simple and multi-stage) Dockerfiles to Cloud-Native Buildpacks (buildpacks.io/paketo.io), Google’s JIB and jlink under the evaluation criteria of
  • build time
  • build size
  • standardization
  • robustness
  • memory configuration
  • security

The examples and live demo will have certain focus on Java-based frameworks (Spring Boot, Quarkus, Micronaut), but coverage of other languages will also be included and highlighted.
Matthias Haeussler
Novatec Consulting GmbH
Matthias Haeussler is Chief Technologist at Novatec Consulting, university lecturer for distributed systems, awarded ambassador of Cloud Foundry and the organizer of the Stuttgart Cloud Foundry Meetup. He advises clients on Cloud strategies and supports implementations and migrations. Prior to that he was employed at IBM R&D Germany for more than 15 years. He has teaching experience from lectures at multiple universities in Stuttgart. Besides that he is frequent speaker at various national and international conferences and meetups. (Devoxx Champion 2024, Spring One Platform, Open Source Summit, Cloud Foundry Summit, Spring IO, IBM InterConnect, WJAX).