How to deploy full fledge Medusa app to Kubernetes cluster
Learn how to deploy the Medusa backend, Medusa storefront, and Medusa admin using Kubernetes.
Kubernetes allows applications to be scalable with support for load balancing or self-healing. It’s widely used for deploying applications from middle to large size, with a bunch of tools built around it so that you can easily integrate your existing technology stack to Kubernetes.
Medusa is a set of open-source e-commerce tools that provides tools for backend service, admin GUI, and even store GUI. Using Medusa, you have the building blocks you need to deploy your e-commerce app. With Medusa, you can save your precious time to focus on the business requirements instead of building the same code for authentication or authorization over and over again.
In this article, let’s deploy the medusa-backend, Medusa storefront, and Medusa admin, along with PostgreSQL and Redis, to the Kubernetes cluster.
How Medusa works
Medusa typically consists of the following components:
- A Medusa Backend, which is the backbone of Medusa, is used for creating APIs that will be used in both admin GUI and the storefront GUI
- A storefront GUI, which is the customer web app that users will visit to buy the items they like
- An admin GUI allows the owner of the e-commerce app to create, edit, and check user payment orders.
You could also add other functionalities to Medusa through plugins. For example, you can use:
Medusa supports a number of databases for storing application data. For development purposes, you can use SQLite to store the app data and Redis to store the application events.
With production delivery, you should use a PostgreSQL database and a Redis persisted instance to store the application events.
Prerequisites
In order to follow along with the step-by-step tutorial in this article, you need to prepare the following…