DevOps Kubernetes Deployment with Ingress, DNS and SSL TLS

Use Kubernetes to deploy a complete web application (frontend in React + backend with database) with authentication
Use Kubernetes to deploy a complete open source app on a real domain name with DNS configured and a valid SSL/TLS Certificate
Deploy a real frontend with authentication in React with React Router
Solve the problem of “React Router not working in production” in the cleanest way using an NGINX configuration file
Deploy a real backend with database and authentication
Solve the problem of the database that needs to be initialised manually only the first time once deployed
Learn the theory and the practice to run on your laptop and deploy a fully featured web application made of a frontend, a backend and a database

This course runs and deploys with Kubernetes a fully featured open source project from the public fullstackunicorn gitlab account that you can use as a template for any of your future projects.

The whole course is organised as a step-by-step procedure and the procedure has been deducted from the very practical problems you face when you ACTUALLY ARE DEPLOYING a real and fully featured web application online.

I assume you have a new laptop with nothing installed, so we start from the very beginning and we don’t miss any step.

  • I show you how to set up and use the developer essentials: Google Chrome, Docker Desktop, Vagrant, Postman, Postbird and VsCode.
  • I show you how to run a frontend, a backend and a PostgreSQL database on your laptop, in a Docker Virtual Environment, made of two containers, one for the frontend, one for the backend and the local database.
  • I show you how to deploy the frontend, the backend and the PostgreSQL database online, on a Kubernetes Cluster from the provider Digital Ocean and how to configure the DNS for a real domain name and how to create a valid SSL/TLS Certificate, that is all what you need when you REALLY want to deploy a REAL web application.

The open source project is fully featured and faces all the problems that a real web application needs to face:

  • It solves the problem with the React Router “not working in production”
  • It makes easy to enable/disable authentication
  • It makes easy to switch between fake developer users and real users when authentication is enabled
  • It manually initialise the database only the first time when it is created

Those problems need to be handled in order to make the web application work online, even if they are not Kubernetes problems.

The procedure handles all what needs to be handled to make the application work online.

Tutorial Bar
Logo