Udagram is a simple cloud application developed alongside the Udacity Cloud Engineering Nanodegree. It allows users to register and log into a web client, post photos to the feed, and process photos using an image filtering microservice.
You'll need to install docker https://docs.docker.com/install/. Open a new terminal within the project directory and run:
- Build the images:
docker-compose -f docker-compose-build.yaml build --parallel
- Push the images:
docker-compose -f docker-compose-build.yaml push
- Run the container:
docker-compose up
- visit http://http://localhost:8100/home
You'll need to install eksctl https://eksctl.io. Open a new terminal within the project directory and run:
-
Run
cd course-03/exercises/udacity-c3-deployment/k8s/cluster/
-
Run
eksctl create cluster -f cluster.yaml
. Takes long time to create a new cluster, don't forget to delete it after finishing to avoid AWS costs by runningeksctl delete cluster --name udagram-staging
. -
Run
eksctl get cluster
and make sure to findudagram-staging
cluster. -
Run
cd ../scripts
-
Run
chmod +x deploy-configs-secrets.sh
if needed. -
Run
./deploy-configs-secrets.sh
-
Run
kubectl apply -f backend-feed-deployment.yaml
, and make sure to give enough time for the pod to start and then runkubectl get pods
and find backend-feed pods in the list in state RUNNING. -
Run
kubectl apply -f backend-feed-service.yaml
-
Run
kubectl apply -f backend-user-deployment.yaml
-
Run
kubectl apply -f backend-user-service.yaml
-
Run
kubectl apply -f reverseproxy-deployment.yaml
-
Run
kubectl apply -f reverseproxy-service.yaml
-
Run
kubectl apply -f frontend-deployment.yaml
-
Run
kubectl apply -f frontend-service.yaml
- Run
kubectl port-forward svc/reverseproxy 8080:8080
and test that thelocalhost:8080/api/v0
passes the postman collections. rest api postman collection - Run
kubectl port-forward svc/frontend 8100:8100
to service the frontend. - Visit localhost:8100 and make sure it works.