This chapter covers:
- Principles for designing cloud native applications
- Introducing Spring for building cloud native applications
- Introducing Docker for portable and self-contained applications
- Introducing Kubernetes for deploying applications to the cloud
- Introducing patterns and technologies used in the book
The way we design applications for the cloud is different compared to traditional approaches. The Twelve-Factor methodology, consisting of best practices and development patterns, is a good starting point for building applications that can be considered cloud native. I’ll explain the methodology in the first part of the chapter, and I’ll expand on it throughout the book.
You’ll then build a simple Spring Boot application and run it with Java, Docker, and Kubernetes, as shown in figure 2.1. Throughout the book, I’ll go deeper into each of those topics, so don’t worry if something is not entirely clear. The goal of this chapter is to provide you with a mental map of the journey you will undertake from code to production in a cloud environment while familiarizing with patterns and technologies that you will leverage in the rest of the book.