Four-Project Series

Converting Legacy Applications to Cloud Native in Kubernetes you own this product

prerequisites
intermediate Java • basics of Docker, Spring, and web development
skills learned
refactor a legacy app for the cloud • create REST API with Spring Boot • containerize a Spring Boot application • deploy microservices on Kubernetes
John Guthrie
4 weeks · 7-9 hours per week average · INTERMEDIATE
filed under

In this series of liveProjects, you’ve joined up with a fantasy football company whose intranet is at least 15 years out of date. Your boss wants to update to a modern, microservices-based architecture that runs in the cloud using Kubernetes. The IT team has kicked off this project with a new UX design for your web applications—but there’s a catch. Those old web apps have business processes built into them that can’t be rewritten from scratch. Instead, you’ve decided to transform these legacy applications into RESTful web services. Your challenges in this liveProject will include reviewing and modernizing the legacy app with Spring Boot and RESTful APIs, Dockerizing the app to run in a container environment, and then deploying it onto Kubernetes. Each liveProject is a self-contained learning experience, so you can pick and choose the skills most relevant to you.

These projects are designed for learning purposes and are not complete, production-ready applications or solutions.

here's what's included

Project 1 Spring MVC App to Spring Boot
In this liveProject, you’ll rebuild an outdated candidate report-generating application to use the latest standard of Spring Boot. This new application will take advantage of Spring Boot’s amazing features such as bundled dependencies, reduction of boilerplate code, and integration with other modern frameworks. It can also benefit from running with an embedded server, meaning your boss can finally decommission old application servers.
$29.99 FREE
try now
Project 2 Convert an App to RESTful API
In this liveProject, you’ll prepare an old monolithic application for migration to microservices by converting it to be a REST-based service. You’ll break up an established monolith by using bounded contexts to give your microservices responsibility over a smaller part of the business domain. You’ll convert these microservices to use RESTful APIs, allowing for the existing business logic to remain intact, and leaving behind a static Thymeleaf-based user interface allows another team to write a modern front end.
$29.99 $19.99
add to cart
Project 3 Containerize with Docker
In this liveProject, you’ll use Docker to containerize a Spring Boot application and a PostgreSQL database. Containers make your application much easier to scale, and are a key step towards cloud deployment. You’ll use Docker Compose to see how your containerized applications and services interact, and build Dockerfile-based containers with kaniko.
$29.99 $19.99
add to cart
Project 4 Deploy in Kubernetes
In this liveProject, you’ll run a containerized Spring Boot application and a PostgreSQL database in Kubernetes. Kubernetes manages the entire lifecycle of containers, making them easy to scale. It’s the best-of-breed cloud container orchestration framework, with an active open-source community of contributors.
$29.99 $19.99
add to cart

project author

John Guthrie
John Guthrie is an engineer at VMware, where he works in the Modern Applications Platform group, helping customers migrate their applications and infrastructure to cloud-native. He has a decades-long career working with enterprise systems and data as an administrator, developer, architect, and technical manager. His current career focuses on enabling customers, through pair-programming and other XP practices, to modernize their software and culture.

Prerequisites

This liveProject is for intermediate Java developers, who are familiar with the basics of enterprise web development. To begin this liveProject, you will need to be familiar with the following:


TOOLS
  • Intermediate Java
  • Basic Spring
  • Web servlet engine or application server
  • Basic Docker
TECHNIQUES
  • Basics of web development
  • Basics of web application testing

you will learn

In this liveProject, you’ll learn important technologies for modernizing legacy apps, cloud development, and containerization that are in high demand from modern businesses.


  • Development with Spring Boot
  • Testing with Spring Boot and JUnit 5
  • Modernization techniques including microservices and dependency bundling
  • Modernization techniques including RESTful APIs
  • Running containers in Docker
  • Networking with Docker and Docker Compose
  • Building containers using buildpacks and the Spring Boot image plugin for Maven/Gradle
  • Building Dockerfile-based containers with kaniko
  • Setting up and running desktop Kubernetes
  • Managing multiple deployments in namespaces
  • Running PostgreSQL as a Kubernetes (StatefulSet)
  • Building containers using Docker
  • Deploying your Spring Boot application in Kubernetes

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.
includes 4 liveProjects
liveProject $47.99 $59.99 self-paced learning
RECENTLY VIEWED