Skip to content

🍃 Code samples and projects from the book "Cloud Native Spring in Action - With Spring Boot and Kubernetes" (Manning)

License

Notifications You must be signed in to change notification settings

ThomasVitale/cloud-native-spring-in-action

Repository files navigation

🍃 Cloud Native Spring in Action

The book cover of 'Cloud Native Spring in Action' by Thomas Vitale

This repository contains the source code accompanying the book Cloud Native Spring in Action - With Spring Boot and Kubernetes written by Thomas Vitale and published by Manning Publications.

There is a folder for each chapter, for which both an initial and final versions are available. For example, for chapter 4, you can use Chapter04/04-begin as a starting point to follow along with the examples in the chapter and Chapter04/04-end to check the code as it looks like at the end.

The book uses Spring Boot 2.7.x and this main branch contains the samples updated to version 2.7.18. You can find the same examples upgraded to the latest 3.x version of Spring Boot in a dedicated branche. Feel free to use Spring Boot 3 while reading the book. Only a few minor changes are necessary to the code samples and they are documented here.

Prerequisites

Chapter after chapter, you'll build, containerize, and deploy cloud native applications. Along the journey, you will need the following software installed.

Gradle and Maven

The code samples in the book use Gradle as the build tool. Should you prefer Maven, here's a table mapping Gradle commands to Maven so that you can easily follow along.

Gradle Maven
./gradlew clean ./mvnw clean
./gradlew build ./mvnw install
./gradlew test ./mvnw test
./gradlew bootJar ./mvnw spring-boot:repackage
./gradlew bootRun ./mvnw spring-boot:run
./gradlew bootBuildImage ./mvnw spring-boot:build-image -DskipTests

Guides, Tools and Tips

Source Code by Chapter

Chapter Starting point Intermediate version Final version
1. Introduction to cloud native - - -
2. Cloud native patterns and technologies 02-begin - 02-end
3. Getting started with cloud native development 03-begin - 03-end
4. Externalized configuration management 04-begin - 04-end
5. Persisting and managing data in the cloud 05-begin 05-intermediate 05-end
6. Containerizing Spring Boot 06-begin - 06-end
7. Kubernetes fundamentals for Spring Boot 07-begin - 07-end
8. Reactive Spring: Resilience and scalability 08-begin - 08-end
9. API gateway and circuit breakers 09-begin - 09-end
10. Event-driven applications and functions 10-begin 10-intermediate 10-end
11. Security: Authentication and SPA 11-begin - 11-end
12. Security: Authorization and auditing 12-begin - 12-end
13. Observability and monitoring 13-begin - 13-end
14. Configuration and secrets management 14-begin - 14-end
15. Continuous delivery and GitOps 15-begin - 15-end
16. Serverless, GraalVM and Knative 16-begin - 10-end

Polar Bookshop

The final project developed throughout the book is available here.

You can find the source code for the Angular frontend here.

Book Forum

Feel free to submit questions, feedback, or errata to the forum dedicated to "Cloud Native Spring in Action": https://livebook.manning.com/book/cloud-native-spring-in-action/.

Contact the Author

You are very welcome to contact me for questions, feedback, or suggestions. Feel free to reach out to me on Twitter, LinkedIn, Mastodon, BlueSky or here on GitHub.