This device is not compatible.


Deploy a Full Stack Web Application over Kubernetes

In this project, we’ll deploy a web application over a Kubernetes cluster. We’ll deploy both the backend and frontend separately. We’ll use ConfigMaps to share common information among the services using the environment variables in our containers.

Deploy a Full Stack Web Application over Kubernetes

You will learn to:

Perform different operations on container images.

Use microservice architecture to deploy a web application.

Deploy database as a service over Kubernetes.

Use ConfigMaps to share information among Kubernetes services.



Distributed Architecture

Docker Image Management


Basic knowledge of Docker and Docker images

Basic knowledge of Docker Hub

Good understanding of Kubernetes services

Basic understanding of microservice architecture




Project Description

In this project, we’ll use Docker and Kubernetes command-line tools to perform the different operations necessary to deploy a Ruby-on-Rails (RoR) application over a Kubernetes cluster. We’ll use the PostgreSQL database with this application.

Kubernetes is an open-source platform that lets us deploy and manage containerized applications. Kubernetes takes and manages services, from the deployment stage to the final stage of exposure. Beyond that, Kubernetes also automatically restarts crashed applications and load balances the traffic between replicas.

We’ll use Docker to containerize our application, and we’ll push it to Docker Hub for later use. Then, we’ll separately deploy our Rails web application and Database following the microservice architecture. Also, we’ll create and inject environment variables in our frontend and backend containers. Finally, we’ll host our application using Kubernetes for global access.

Project Tasks


Get Started

Task 0: Explore the Application

Task 1: Create a Cluster

Task 2: Containerize and Push the Frontend of the Application


Deploy over Kubernetes

Task 3: Deploy the Database

Task 4: Create a Service for the Database

Task 5: Deploy the Frontend of the Application

Task 6: Create a Service for the Front-end

Task 7: Create a ConfigMap

Task 8: Delete Previous Resources

Task 9: Configure the Database Deployment

Task 10: Configure the Frontend Deployment

Task 11: Access the Application