Source code of the examples shown at the conference.
Demonstration of:
- Cloud native development with Spring Boot and Reactive Spring
- Containerization with Cloud Native Buildpacks
- Kubernetes deployment manifests, graceful shutdown, and health probes
- Spring Boot configuration through ConfigMaps
- Native executables with Spring Native and GraalVM
- Serverless applications on Knative
To run all the examples, you need to install the following tools:
Recommended tools:
Both Spring Boot applications can be run locally with this command:
$ ./gradlew bootRunYou can containerize them via Buildpacks. Demo Service will be containerized as a JVM image, whereas Demo Native will be containerized as a Native image.
$ ./gradlew bootBuildImageYou can spin up a Kubernetes cluster as follows:
$ ./kind/create-cluster.shThen, deploy Demo Service with kubectl:
$ kubectl apply demo-service/k8sWhen you're done, you can destroy the cluster as follows:
$ ./kind/destroy-cluster.shYou can spin up a Kubernetes cluster with Knative as follows:
$ ./kind/install-knative.shThen, deploy Demo Native with kubectl:
$ kubectl apply demo-service/knativeWhen you're done, you can uninstall the cluster as follows:
$ ./kind/uninstall-knative.shIf you're looking for an open-source Kubernetes-based platform, you might want to try [https://tanzucommunityedition.io](VMware Tanzu Community Edition), which is the one I used for the presentation.