A fullstack eCommerce website built with MySQL/PostgresQL, Express, React, and Redux. Integrated Stripe payment gateway. Uses Docker to containerize services and Kubernetes to manage containers.
- 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/hosts
file, paste in minikube ip (by runningminikube ip
in terminal)
[your_minikube_ip] ecommerce-fullstack.dev
- Run skaffold
$ skaffold dev
- Now you should see the app running at
ecommerce-fullstack.dev