venkataravuri / e-commerce-microservices-sample

A fictitious cloud-native e-commerce application using microservices architecture powered by polyglot languages & databases, deployable to Kubernetes & AWS
241 stars 168 forks source link

Replace base image openjdk:17-alpine with amazoncorretto:17-alpine #15

Open odidev opened 12 months ago

odidev commented 12 months ago

I tried to deploy e-commerce-microservices-sample on Arm64 machines as mentioned in Readme. I have followed the below steps to deploy the application microservices to Minkube K8s cluster:


git clone https://github.com/venkataravuri/e-commerce-microservices-sample 

cd infra/k8s 

minikube start  

kubectl apply -k shared-services/overlays/local  

kubectl apply -k apps/overlays/local  

kubectl get pods -A -o wide   

Five microservices cart-deployment, products-deployment, search-deployment, store-ui-deployment and users-deployment are failing to start on Arm64 machines.

I have successfully built the docker images required for four microservices on local arm64 server as they are not present on dockerhub but the base image used in the Dockerfile of cart-deployment microservice is openjdk:17-alpine which is only available for Amd64 and also this image is deprecated. I have replaced the openjdk:17-alpine image with amazoncorretto:17-alpine and successfully built the same.

Can we replace openjdk:17-alpine base image with amazoncorretto:17-alpine as openjdk:17-alpine is deprecated and amazoncorretto:17-alpine image is available for both Amd64 and Arm64 machines?

If required, I am happy to raise PR with this change.

odidev commented 11 months ago

I tried to deploy e-commerce-microservices-sample application on both amd64 and arm64 platfrom using minikube as mentioned in Readme.

I have followed the below steps to deploy the application microservices to Minkube K8s cluster:

git clone https://github.com/venkataravuri/e-commerce-microservices-sample  

cd infra/k8s    

minikube start   

kubectl apply -k shared-services/overlays/local   

kubectl apply -k apps/overlays/local   

kubectl get pods -A -o wide      

Four microservices cart-deployment, products-deployment, search-deployment, store-ui-deployment are running fine but users-deployment are failing to start on both the machines machines.

To launch the application on UI, I have deployed the application to EKS cluster on x86 and Arm64 machines. I am able to get the external IP using EKS but when trying to open the application microservices on UI, application is getting reflected for fraction of second on UI and then it is getting disappear on both x86 and arm64 machine.

Can you please suggest some pointers on the above mentioned issue as it is failing on amd64 too.

odidev commented 11 months ago

Hi

Can you please look into above issues?