It is Flipcart E-commerce website clone build with Reactjs, Tailwind CSS, Material ui and Nodejs.
Deploy using Docker and Kubernetes on AWS EC2.
To run this project, you will need to add the following environment variables to your following file
ENV Variables section | File |
---|---|
AWS EBS Volume ID | server-app-config.yml |
Paytm Credentials | server-app-secret.yml |
JWT secret and expiry | server-app-secret.yml |
Cloudinary Credentials | server-app-secret.yml |
MongoDB | server-db-secret.yml |
SERVER_URL | Dockerfile in frontend directory |
AWS EBS Volume ID
AWS_EBS_VOLUME_ID
Paytm Credentials
PAYTM_MID
PAYTM_MERCHANT_KEY
PAYTM_WEBSITE
PAYTM_CHANNEL_ID
PAYTM_INDUSTRY_TYPE
PAYTM_CUST_ID
JWT secret and expiry
JWT_SECRET
JWT_EXPIRE
Cloudinary Credentials
CLOUDINARY_NAME
CLOUDINARY_API_KEY
CLOUDINARY_API_SECRET
MongoDB
MONGO_INITDB_ROOT_USERNAME
MONGO_INITDB_ROOT_PASSWORD
Client side
SERVER_URL= #Add your server url after backend image build
:warning:Note : Setup git, docker, minikube, kubernetes on AWS EC2, view my install.txt
first to start with this project.
Clone repository
git clone https://github.com/KPRAPHULL/flipcart-e-commerce-mern-docker-kubernetes.git
Go to your project directory
cd "flipcart-e-commerce-mern-docker-kubernetes"
:warning:Note :- First set environment variable, see above "Environment Variables" section
Go to server directory
cd ../server
Now setup database
kubectl apply -f server-db-persist-volume.yml
kubectl apply -f server-db-persist-volume-claim.yml
kubectl apply -f server-db-secret.yml
kubectl apply -f server-db-deploy.yml
kubectl apply -f server-db-service.yml
Build Image for backend
docker build -t flipcart-server-app-image .
Now setup backend server
kubectl apply -f server-app-secret.yml
kubectl apply -f server-app-config.yml
kubectl apply -f server-app-deploy.yml
kubectl apply -f server-app-service.yml
Copy image of Cluster-ip with port of backend
kubectl get service/flipcart-server-app
ex: 10.10.12.14:5000
Go to cliend directory
cd ../client
Build image for frontend
Now setup frontend
docker build -t flipcart-client-app-image .
kubectl apply -f client-app-deploy.yml
kubectl apply -f client-app-service.yml
Now copy aws ec2 IPv4 address and paste port ex: 3.13.11.65:32013
I'm a PRAPHULL KUMAR.
Skilled in full stack web development(React Js, Next Js , Node Js), Java, DSA, Docker, Kubernetes