A fully containerized, production-ready user management REST API built with Spring Boot, PostgreSQL, AWS S3, and Docker, featuring robust authentication, file uploads, and CI/CD with GitHub Actions.
- β User registration, login, and JWT-based authentication
- π¦ Profile image upload & storage on AWS S3
- π Role-based access control (ADMIN, USER, MODERATOR)
- π§Ύ PostgreSQL with JPA/Hibernate integration
- π Actuator endpoints for health and metrics
- π³ Fully dockerized with Docker & Docker Compose
- π CI/CD pipeline using GitHub Actions
- βοΈ Deployable to AWS ECS (ECR setup included)
- Java 17 + Spring Boot 3
- PostgreSQL
- AWS S3
- Docker + Docker Compose
- GitHub Actions
- JWT for authentication
- Spring Security & Validation
- Java 17
- Docker & Docker Compose
- PostgreSQL (optional if using Docker)
- AWS credentials (for S3 support)
# Clone the repo
git clone https://github.com/yourusername/user-management-api.git
cd user-management-api
# Build and run with Docker
docker-compose up --build