This is a demo Solution to demonstrate migrating an EDAS application to AWS including microservice management, devops and infra as code. See detail readme here.
This is a demo project to showcase running microservices on Alibaba Cloud.
This demo is powered by the following projects and products:
- Apache Dubbo for Remote Procedure Call
- Spring Cloud Alibaba for Service to Service Call
- Nacos for Service Discovery and Configuration management
- Alibaba Cloud EDAS for deployment and hosting
- Alibaba Cloud ARMS for monitoring
- Alibaba Cloud SAE for deployment and hosting without being aware of the underlying infrastrcuture.
You can visit http://47.93.130.78:8080 for an live demo, which is hosted on Alibaba Cloud SAE.
This project contains the following applications (more applications are ong the way):
- frontend: A Java application with SpringMVC and thymeleaf as template engine.
- cartservices: A Java application that provides basic operations to add products to shopping carts, which is powered by Apache Dubbo.
- productservice: A Java application that provies basic operations to list all the products and query product by ID, which is powered by Spring Cloud Alibaba.
You need to go to the src
directory, for each sub module, there is a build.sh
file, just run it to build the docker image for each module.
./build.sh
This project can be deployed to docker with the following command
docker-compose -f docker-compose.yaml up
If you want to undeploy, use the following command
docker-compose -f docker-compose.yaml down
This project can be deployed to Kubernetes cluster with the following command:
cd kubernetes-manifests/
for i in *.yaml; do kubectl apply -f $i; done
If you want to delete the deployment, please use the following command:
for i in *.yaml; do kubectl delete -f $i; done
This project can be deployed to Kubernetes cluster with helm chart:
helm install ./helm-chart --name microservice-demo
If you want to delete the deployment with helm, use the following command:
helm delete microservice-demo
This project is originiated from GoogleCloudPlatform/microservice-demo