This project showcases a microservice architecture comprising user-service, employee-service, and an api-gateway for interaction between services. This demo app is designed for deployment on AWS EKS and serves as a learning tool for containerized microservice deployment.
- Microservice architecture with Spring Boot
- REST APIs with Swagger documentation
- In-memory H2 databases for development and testing
- Containerized deployment using Docker and Docker Compose
The application consists of:
- User Service: Handles user-related operations.
- Employee Service: Manages employee data.
- API Gateway: Serves as a unified entry point to access the microservices.
The API Gateway exposes the combined Swagger UI for easy interaction with the microservices. Access it at http://localhost:8080/swagger-ui/index.html.
Each service includes an H2 database console:
- User Service H2 Console: http://localhost:8081/h2-console
- Employee Service H2 Console: http://localhost:8082/h2-console
Use the JDBC URL, username, and password specified in the application.yaml files of the respective services to log in.
- Docker
- Docker Compose
- Clone the repository to your local machine.
- Navigate to the root directory where
docker-compose.ymlis located and run: - Run the following command to build and start the services:
docker-compose up --build- API Gateway Swagger UI: http://localhost:8080/swagger-ui/index.html
- User Service H2 Console: http://localhost:8081/h2-console
- Employee Service H2 Console: http://localhost:8082/h2-console
- JDBC URL:
jdbc:h2:mem:testdb - Username:
sa - Password:
password
For questions or support, please contact support@samyaktechlabs.com.




