Build a Website on Google Cloud: Challenge Lab

git clone https://github.com/googlecodelabs/monolith-to-microservices.git

cd ~/monolith-to-microservices

./setup.sh



cd ~/monolith-to-microservices/monolith



gcloud services enable cloudbuild.googleapis.com


gcloud builds submit --tag gcr.io/${GOOGLE_CLOUD_PROJECT}/fancytest:1.0.0 .




gcloud services enable container.googleapis.com


gcloud container clusters create fancy-cluster --num-nodes 3 --zone us-central1-a --machine-type n1-standard-1   


kubectl create deployment fancytest --image=gcr.io/${GOOGLE_CLOUD_PROJECT}/fancytest:1.0.0


kubectl expose deployment fancytest --name=fancytest --type=LoadBalancer --port=80 --target-port=8080




cd ~/monolith-to-microservices/microservices/src/orders

gcloud builds submit --tag gcr.io/${GOOGLE_CLOUD_PROJECT}/orders:1.0.0 .


cd ~/monolith-to-microservices/microservices/src/products

gcloud builds submit --tag gcr.io/${GOOGLE_CLOUD_PROJECT}/products:1.0.0 .




cd ~/monolith-to-microservices/microservices/src/orders

kubectl create deployment orders --image=gcr.io/${GOOGLE_CLOUD_PROJECT}/orders:1.0.0



kubectl expose deployment orders --type=LoadBalancer --port 80 --target-port 8081





cd ~/monolith-to-microservices/microservices/src/products

kubectl create deployment products --image=gcr.io/${GOOGLE_CLOUD_PROJECT}/products:1.0.0


kubectl expose deployment products --type=LoadBalancer --port 80 --target-port 8082


kubectl get services




cd ~/monolith-to-microservices/react-app

nano .env


 

REACT_APP_ORDERS_URL=http://localhost:8081/api/orders

REACT_APP_PRODUCTS_URL=http://localhost:8082/api/products





REACT_APP_ORDERS_URL=http://<ORDERS_IP_ADDRESS>/api/orders

REACT_APP_PRODUCTS_URL=http://<PRODUCTS_IP_ADDRESS>/api/products




cd ~/monolith-to-microservices/microservices/src/frontend

gcloud builds submit --tag gcr.io/${GOOGLE_CLOUD_PROJECT}/frontend:1.0.0 .



kubectl create deployment frontend --image=gcr.io/${GOOGLE_CLOUD_PROJECT}/frontend:1.0.0


kubectl expose deployment frontend --type=LoadBalancer --port 80 --target-port 8080 


Blogspot: https://gcpchallengelabs.blogspot.com/


LinkedIn: https://www.linkedin.com/in/yash-vadhadiya-03102b146/


GitHub: https://github.com/YashVadhadiya


Telegram: https://t.me/megaebookstore


Linktree: https://linktr.ee/yashvadhadiya

Comments