This project demonstrates a microservices architecture using Spring Boot, Kubernetes, and RabbitMQ.
The project consists of the following services:
- Cards Service
- Loans Service
- Accounts Service
- Config Server
- Eureka Server
- Gateway Server
Each service has its own configuration file located in the src/main/resources directory:
cards/src/main/resources/application.ymlloans/src/main/resources/application.ymlaccounts/src/main/resources/application.ymlconfigserver/src/main/resources/application.ymleurekaserver/src/main/resources/application.ymlgatewayserver/src/main/resources/application.yml
- Server Port: Each service runs on a different port.
- Spring Profiles: All services use the
qaprofile. - Datasource: H2 in-memory database is used for all services.
- Management Endpoints: All endpoints are exposed.
To run RabbitMQ, use the following Docker command:
docker run -it --rm --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:4.0-managementminikube start
kubectl port-forward svc/<service-name> <container-port>:<host-port>