Micro-service online ticketing web application built with Kubernetes and NATS-streaming
Connection URL: Kubernetes Load Balancer IP (local enviornment: 127.0.0.1)
Enviornment:
- node, npm
- Kubernetes Desktop
- or GKE
- or any Kubernetes Cloud
Development steps:
- Clone the project:
git clone https://github.com/berlincho/e-commerce-ticketing.git
- Create the secrets for
JWT_KEY
andSTRIPE_KEY
:
kubectl create secret generic jwt-secret --from-literal=<JWT_KEY=12345>
kubectl create secret generic stripe-secret --from-literal=<STRIPE_KEY=12345>
- Install ingress-nginx: https://kubernetes.github.io/ingress-nginx/deploy/
- e.g. for Kubernetes-Desktop
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.46.0/deploy/static/provider/cloud/deploy.yaml
- (Optional) Install dependencies in
/auth
,/orders
,/tickets
,/payments
,/client
,/expiration
npm install
- Execute the skaffold pipelines
skaffold dev
- Clean up
skaffold delete
Test steps:
- Install dependencies in
/auth
,/orders
,/tickets
,/payments
,/client
,/expiration
npm install
- enter
/auth
,/orders
,/tickets
,/payments
npm run test