A fullstack eCommerce website built with MySQL/PostgresQL, Express, React, and Redux. Services are containerized with Docker, managed by Kubernetes, and deployed to AWS with Github Actions CD pipeline. It also Integrated Stripe payment gateway.
- Docker
- Kubernetes (Minikube)
- Skaffold
- Stripe account
- Start minikube
$ minikube start- Inject environment variables into Kubernetes
$ kubectl create secret generic jwt-secret-key --from-literal JWT_SECRET_KEY=YOUR_JWT_SECRET
$ kubectl create secret generic stripe-secret-key --from-literal STRIPE_SECRET_KEY=YOUR_STRIPE_SECRET_KEY
$ kubectl create secret generic mysql-password --from-literal MYSQL_ROOT_PASSWORD=YOUR_DB_PASSWORD- Enable NGINX ingress controller (Go to the official doc to find instructions that suit your platform)
$ minikube addons enable ingress- Edit
/etc/hostsfile, paste in minikube ip (by runningminikube ipin terminal)
[your_minikube_ip] ecommerce-fullstack.dev
- Run skaffold
$ skaffold dev- Now you should see the app running at
ecommerce-fullstack.dev