Description
This lab will walk you through the process of building a Spring Boot application, compiling it into a native executable with GraalVM Native Image, and then containerising it. Using a native executable enables you to reduce application startup times, get low resource usage, and generate much smaller containers.
You will also learn how to create a small Distroless container to package your native executable, enabling you to shrink your container images even further.
In this lab you will:
- Add a basic Spring Boot application to a container image and run it
- Build a native executable from this application, using GraalVM Native Image
- Add the native executable to a container image
- Shrink your application container image size with GraalVM Native Image and Distroless containers
- See how to use the GraalVM Native Build tools, Maven Plugin , as part of your CI/CD pipeline
Expected Time to Complete
60 - 75 mins
Intended Audience
Application Developer, DevOps Engineer
Level
Intermediate
Products/Services
Oracle GraalVM, Oracle Cloud Infrastructure, Oracle Linux
Technology
Spring Boot 3, GraalVM Native Image, Java
Change-log
- April 17, 2023 - Initial version
- November 29, 2023 - Last update
Acknowledgements
- Owners - Kristian Foster, Bernard Horan, Olga Gupalo
- Contributors - Ewan Slater, Shaun Smith, Sachin Pikle
Difficulty
Intermediate
Time Limit
1 hour, 30 minutes
Views
2683
Students
250
Authors
Topics
Native ImageOracle LinuxVS CodeJavaOracle GraalVMSpring Boot 3Oracle Cloud InfrastructureOCI