Welcome to this Spring Boot Microservices project, which showcases a set of services designed for distributed architectures. This project includes Discovery Service, Cloud Gateway, Config Server, and User Service integrated with JWT, Role-Based Access, and Refresh Token security mechanisms.
The entire system is containerized using Docker and can be run both in a local development environment and a hosted environment with Docker. This repository demonstrates the power of Spring Boot, security best practices, and microservices architecture.
- Discovery Service: Centralized service registry for service discovery with Eureka.
- Cloud Gateway: API Gateway routing to microservices with security filters.
- Config Server: Centralized configuration management using Spring Cloud Config.
- User Service:
- JWT Authentication
- Role-Based Access Control
- Refresh Token mechanism
- Security with Spring Security
- Dockerized: Docker files for each service, with Docker Compose for orchestration.
- Spring Boot: 3.x
- Spring Cloud: Eureka, Config Server, Cloud Gateway
- Spring Security: JWT, Role-based Authentication
- PostgreSQL: Database for user data
- Docker: Containerization of microservices
- Docker Compose: Simplified local setup with multi-container orchestration
These instructions will help you set up the project locally on your machine.
Ensure the following are installed on your local machine:
- Docker
- Docker Compose
- Java 21 or higher
- Maven for building Spring Boot applications
git clone https://git.1-hub.cnThekishor/spring-boot-microservice-docker.git
cd spring-boot-microservice-docker