Skip to content

aliyun/alibabacloud-microservice-demo

Folders and files

NameName
Last commit message
Last commit date
Aug 28, 2020
Aug 28, 2020
Nov 10, 2022
Nov 25, 2021
Nov 2, 2022
May 19, 2022
Nov 23, 2022
Feb 23, 2023
Nov 10, 2022
Aug 28, 2020
Sep 25, 2020
Dec 20, 2020
Aug 15, 2019
Sep 1, 2022
Aug 26, 2020
Aug 26, 2020
Aug 28, 2020
Sep 22, 2022
Aug 17, 2020

Repository files navigation

Introduction

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 infrastructure.

Architecture

This project contains the following applications (more applications are on 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.

Build

Build docker image using docker-compose

You can use docker-compose to build docker images:

docker-compose build

Build docker image using scripts

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

Deploy

Deploy with docker-compose

This project can be deployed to docker with the following command

docker-compose -f docker-compose.yml up

If you want to undeploy, use the following command

docker-compose -f docker-compose.yml down

Deploy to Kubernetes cluster

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

Deploy with helm

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

Collaborator

If you are a collaborator, please read the Collaborator to prepare for development.

Credit

This project is originiated from GoogleCloudPlatform/microservice-demo