In this series of liveProjects, you’ll step into the shoes of a Java/Kotlin developer building a microservices-based application. To eliminate duplication and gratuitous differences that arise when developing multiple services, you’ll define a Spring Boot and Docker-based microservice service template and microservice chassis. Together, these components enable you and your colleagues to quickly and easily create production-ready services. Throughout the liveProjects in this series, you’ll develop key features of the microservice chassis and service template including observability, security, and Docker deployment.
In this liveProject, you’ll take on the role of a Java/Kotlin developer tasked with implementing the service template’s observability-related features—key aspects of production-readiness—including a health check API, application metrics, and distributed tracing.
In this liveProject, you’ll add security-related features to the service template. In your role as a Java/Kotlin developer, you’ll gain hands-on experience implementing authentication and authorization of a service’s REST API using JSON Web Tokens (JWTs) as well as a Security Token Service, such as Keycloak, to issue and authenticate JWTs.
In this liveProject, you’ll progressively enhance a service template, starting with packaging it as a container image. Next, you’ll build and run a service template container with Docker Compose, write component tests for a service, and finally build and test a container image. When you’re finished, you’ll have a Github repository that automatically pushes a tested container image to a Docker registry.
Make your Java/Kotlin developer colleagues’ lives easier by enabling them—and you!—to quickly maintain services that were cloned from the service template. In this liveProject, you’ll extract a microservice chassis from the service template project, create Gradle plugins, and publish chassis artifacts and template source code. When you’re done, you’ll have a small service template project that uses a much larger microservice chassis framework. (Your colleagues will thank you!)
This liveProject series is for Java developers who are interested in creating production-ready microservices. To begin these liveProjects you will need to be familiar with the following:
In this liveProject series, you’ll develop features of a microservice chassis and service template including observability, security, and Docker deployment:
geekle is based on a wordle clone.