This is an Ecommerce microservices project built with NextJS, Express with Typescript, NATS, Docker, Kubernetes and Github Actions. The purpose of this project is to create, manage and sell tickets online. The application consists of 5 backend microservices for creating tickets, orders, payments, expiration, and authentication.
To install and run this application on your local machine, follow the steps below:
- Node.js (v14 or higher)
- Docker
- Kubernetes
- Clone the repository
- Open the /etc/hosts file on Mac/ Linux and add
127.0.0.1 ticketing.dev
at the end of the file - cd into auth, client, expiration, orders, payments and tickets and run
npm install
- Install the ingress service by running
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.7.0/deploy/static/provider/cloud/deploy.yaml
- Stay at the root directory of this project and run
skaffold dev
in your terminal - Wait for all the pods to be up and running. All the microservices should show
Connected to mongo!
- Open your browser and navigate to
ticketing.dev
- If you get a warning saying that the page is not secure, you need to type
thisisunsafe
into browser and it'll take you to the webpage