SlideShare a Scribd company logo
Submit Search
Upload
Madhura Bhave at SpringOne 2020
Report
VMware Tanzu
VMware Tanzu
Follow
•
0 likes
•
190 views
1
of
21
Madhura Bhave at SpringOne 2020
•
0 likes
•
190 views
Download Now
Download to read offline
Report
Software
SpringOne 2020 Madhura Bhave, Software Engineer, Spring Boot, VMware
Read more
VMware Tanzu
VMware Tanzu
Follow
Recommended
Sébastien Deleuze at SpringOne 2020
VMware Tanzu
232 views
•
17 slides
Oleg Zhurakousky at SpringOne 2020
VMware Tanzu
275 views
•
15 slides
Juergen Hoeller at SpringOne 2020
VMware Tanzu
420 views
•
10 slides
Craig McLuckie at SpringOne 2020
VMware Tanzu
330 views
•
15 slides
Ilayaperumal Gopinathan at SpringOne 2020
VMware Tanzu
281 views
•
7 slides
Dormain Drewitz at SpringOne 2020
VMware Tanzu
303 views
•
25 slides
More Related Content
Similar to Madhura Bhave at SpringOne 2020
What Is Spring?
VMware Tanzu
725 views
•
54 slides
GitOps on Kubernetes with Carvel
Alexandre Roman
166 views
•
19 slides
Migration from vaadin 6 to vaadin 7 devoxx france 2013
Joonas Lehtinen
3.9K views
•
21 slides
Server Admin Manual
guest5929d21a
867 views
•
228 slides
The Path Towards Spring Boot Native Applications
VMware Tanzu
788 views
•
71 slides
Going Serverless Using the Spring Framework Ecosystem
VMware Tanzu
288 views
•
31 slides
Similar to Madhura Bhave at SpringOne 2020
(20)
What Is Spring?
VMware Tanzu
•
725 views
GitOps on Kubernetes with Carvel
Alexandre Roman
•
166 views
Migration from vaadin 6 to vaadin 7 devoxx france 2013
Joonas Lehtinen
•
3.9K views
Server Admin Manual
guest5929d21a
•
867 views
The Path Towards Spring Boot Native Applications
VMware Tanzu
•
788 views
Going Serverless Using the Spring Framework Ecosystem
VMware Tanzu
•
288 views
Spring Security OAuth2 New AS.pptx
FrancisSoria4
•
8 views
Application Modernization: Migrating Mainframe Apps to the Cloud Using Spring
VMware Tanzu
•
442 views
Application Modernization: Migrating mainframe apps to the cloud using Spring
VMware Tanzu
•
230 views
EWD 3 Training Course Part 37: Building a React.js application with ewd-xpres...
Rob Tweed
•
1.1K views
Multi-Cloud Load Balancing 101 and Hands-On Lab
Avi Networks
•
306 views
Pivotal Platform - December Release A First Look
VMware Tanzu
•
470 views
Brew up a Rich Web Application with Cappuccino
Howard Lewis Ship
•
2.4K views
Visual vm
rkulandaivel
•
722 views
DevConfZA 2020 : Automating your cloud: What are the building blocks
Cobus Bernard
•
274 views
Modern Application Configuration in Kubernetes
VMware Tanzu
•
375 views
GlassFish Embedded API
Eduardo Pelegri-Llopart
•
1.1K views
Java11 New Features
Haim Michael
•
1.2K views
Event Streaming with Kafka Streams and Spring Cloud Stream | Soby Chacko, VMware
HostedbyConfluent
•
1.2K views
State of Steeltoe 2020
VMware Tanzu
•
233 views
More from VMware Tanzu
What AI Means For Your Product Strategy And What To Do About It
VMware Tanzu
71 views
•
38 slides
Make the Right Thing the Obvious Thing at Cardinal Health 2023
VMware Tanzu
61 views
•
23 slides
Enhancing DevEx and Simplifying Operations at Scale
VMware Tanzu
52 views
•
4 slides
Spring Update | July 2023
VMware Tanzu
68 views
•
37 slides
Platforms, Platform Engineering, & Platform as a Product
VMware Tanzu
75 views
•
6 slides
Building Cloud Ready Apps
VMware Tanzu
54 views
•
73 slides
More from VMware Tanzu
(20)
What AI Means For Your Product Strategy And What To Do About It
VMware Tanzu
•
71 views
Make the Right Thing the Obvious Thing at Cardinal Health 2023
VMware Tanzu
•
61 views
Enhancing DevEx and Simplifying Operations at Scale
VMware Tanzu
•
52 views
Spring Update | July 2023
VMware Tanzu
•
68 views
Platforms, Platform Engineering, & Platform as a Product
VMware Tanzu
•
75 views
Building Cloud Ready Apps
VMware Tanzu
•
54 views
Spring Boot 3 And Beyond
VMware Tanzu
•
130 views
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
VMware Tanzu
•
70 views
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
VMware Tanzu
•
64 views
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
VMware Tanzu
•
43 views
tanzu_developer_connect.pptx
VMware Tanzu
•
153 views
Tanzu Virtual Developer Connect Workshop - French
VMware Tanzu
•
32 views
Tanzu Developer Connect Workshop - English
VMware Tanzu
•
90 views
Virtual Developer Connect Workshop - English
VMware Tanzu
•
26 views
Tanzu Developer Connect - French
VMware Tanzu
•
13 views
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
VMware Tanzu
•
77 views
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
VMware Tanzu
•
114 views
SpringOne Tour: The Influential Software Engineer
VMware Tanzu
•
39 views
SpringOne Tour: Domain-Driven Design: Theory vs Practice
VMware Tanzu
•
22 views
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
VMware Tanzu
•
36 views
Recently uploaded
Amazon EKS multi-cluster gitops-bridge
Carlos Santana
59 views
•
38 slides
Critical Control Leadership & Verifications: Operationalising Critical Contro...
myosh team
20 views
•
30 slides
linux-namespaces.pdf
Ignat Korchagin
17 views
•
251 slides
Overcoming CMake Configuration Issues Webinar
ICS
83 views
•
38 slides
AI Infra Day | Accelerate Your Model Training and Serving with Distributed Ca...
Alluxio, Inc.
11 views
•
22 slides
Streamlined CMS - DrupalCon Session
Smile I.T is open
13 views
•
34 slides
Recently uploaded
(20)
Amazon EKS multi-cluster gitops-bridge
Carlos Santana
•
59 views
Critical Control Leadership & Verifications: Operationalising Critical Contro...
myosh team
•
20 views
linux-namespaces.pdf
Ignat Korchagin
•
17 views
Overcoming CMake Configuration Issues Webinar
ICS
•
83 views
AI Infra Day | Accelerate Your Model Training and Serving with Distributed Ca...
Alluxio, Inc.
•
11 views
Streamlined CMS - DrupalCon Session
Smile I.T is open
•
13 views
Build and Modernize Intelligent Apps
Lorenzo Barbieri
•
35 views
MAXQDA-24-Features-EN.pdf
Cheer Chain Enterprise Co., Ltd.
•
153 views
Cloudera Enabling Native Integration of NoSQL HBase with Cloud Providers.pdf
wchevreuil
•
46 views
Understanding Injury Risk in Ageing Workers for a Sustainable Workforce
myosh team
•
35 views
Newsletter Linchpin AI Review ✍️ (Bonus Worth $997).pdf
LouisaHall2
•
6 views
Building a Bridge between Terraform and ArgoCD
Carlos Santana
•
88 views
3 AI Tools for Live Streamers
ontheflystream
•
9 views
Q&A with Confluent Professional Services: Confluent Service Mesh
confluent
•
31 views
HTMX: Web 1.0 with the benefits of Web 2.0 without the grift of Web 3.0
Martijn Dashorst
•
1K views
AI and Software consultants: friends or foes?
Jordi Cabot
•
197 views
AutoMailX Premium
GhouseMohiddin16
•
13 views
Like SpecFlow
Dmitry Dorogoy
•
9 views
How Much Does It Cost To Develop A Mobile App?
iCoderz Solutions
•
8 views
New Groundbreaking AI App.pdf
Anwar78Talukder
•
6 views
Madhura Bhave at SpringOne 2020
1.
Confidential │ ©2020
VMware, Inc. Madhura Bhave The New Center of the Universe Spring Boot ♥ Kubernetes
2.
©2020 VMware, Inc. Center
of the Universe
3.
©2020 VMware, Inc. Unit
of DeploymentCenter of the JVM Universe
4.
©2020 VMware, Inc. 👩💻
🧑💻 @SpringBootApplication public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } } 01 02 03 04 05 06 07 $ mvn package
5.
©2020 VMware, Inc. $
java -jar application.jar
6.
©2020 VMware, Inc. The
only constant is change
7.
©2020 VMware, Inc. 👩💻
🧑💻 🤔
8.
©2020 VMware, Inc.
9.
©2020 VMware, Inc. FROM
openjdk:8-jdk-alpine EXPOSE 8080 ARG JAR_FILE=target/my-application.jar ADD ${JAR_FILE} app.jar ENTRYPOINT ["java","-jar","/app.jar"] 01 02 03 04 05
10.
©2020 VMware, Inc. 👩💻
🧑💻 $ docker build . FROM openjdk:8-jdk-alpine EXPOSE 8080 ARG JAR_FILE=target/my-application.jar ADD ${JAR_FILE} app.jar ENTRYPOINT ["java","-jar","/app.jar"] 01 02 03 04 05
11.
©2020 VMware, Inc. my-application.jar JDK OS
12.
©2020 VMware, Inc. my-application.jar JDK OS Fat
jar overhead Single layer for jar Not optimal
13.
©2020 VMware, Inc. Application Snapshot
Dependencies OS Spring Boot Loader Dependencies JDK
14.
©2020 VMware, Inc. FROM
adoptopenjdk:11-jre-hotspot as builder WORKDIR application ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} application.jar RUN java -Djarmode=layertools -jar application.jar extract FROM adoptopenjdk:11-jre-hotspot WORKDIR application COPY --from=builder application/dependencies/ ./ COPY --from=builder application/spring-boot-loader/ ./ COPY --from=builder application/snapshot-dependencies/ ./ COPY --from=builder application/application/ ./ ENTRYPOINT ["java", "org.springframework.boot.loader.JarLauncher"] 2.3 layertools
15.
©2020 VMware, Inc. FROM
adoptopenjdk:11-jre-hotspot as builder WORKDIR application ARG JAR_FILE=target/*.jar COPY ${JAR_FILE} application.jar RUN java -Djarmode=layertools -jar application.jar extract FROM adoptopenjdk:11-jre-hotspot WORKDIR application COPY --from=builder application/dependencies/ ./ COPY --from=builder application/spring-boot-loader/ ./ COPY --from=builder application/snapshot-dependencies/ ./ COPY --from=builder application/application/ ./ ENTRYPOINT ["java", "org.springframework.boot.loader.JarLauncher"] 2.3 layertools layers.idx custom layers
16.
©2020 VMware, Inc.
17.
©2020 VMware, Inc. 👩💻
🧑💻 Is this another tool I need to learn about? Not really 😃
18.
©2020 VMware, Inc. ♥ 2.3 layers.idx custom
layers $ mvn spring-boot:build-image
19.
©2020 VMware, Inc. Journey
to Production 2.3 Graceful Shutdown Health Checks /actuator/liveness 🔮 ConfigMaps and Secrets 🚀 /actuator/readiness 2.4
20.
©2020 VMware, Inc. 2.3
21.
©2020 VMware, Inc. Spring
Boot loves K8s 👩💻 🧑💻 🤔 Stephane Nicoll Brian Clozel