Welcome to the repository for building and deploying a Java CRUD Rest API using a robust tech stack. This project combines the power of Spring Boot, Hibernate, MySQL, Docker, Docker Compose, and Kubernetes to create a scalable solution for managing data through RESTful services.
- Spring Boot: Simplifies Java application development.
- Hibernate: Widely adopted ORM framework for seamless database interaction.
- MySQL: Reliable relational database management.
- Docker and Docker Compose: Ensures portability, consistency, and ease of deployment.
- Kubernetes: Powerful container orchestration for advanced deployment, scalability, and maintainability.
Follow these steps to dive into the project:
-
Java Application Setup:
- Utilize Spring Boot, Spring Web, Spring Data, and Hibernate.
-
MySQL Setup:
- Install the MySQL Server and MySQL Workbench on your local machine.
-
Dockerization:
- Write a Dockerfile and docker-compose.yml to containerize the Java application and the database.
-
Build and Deployment:
- Use Maven to build the Java app, create a Docker image, and run the container using Docker Compose.
-
Testing:
- Validate the application with Postman and curl.
Explore the advanced deployment options using Kubernetes for enhanced scalability and maintainability.
Ensure you have the following tools installed:
- Java Development Kit (JDK)
- Maven
- Docker
- Docker Compose
- Kubernetes (for advanced deployment)
Contributions are welcome! Feel free to submit issues or pull requests to improve the project.