https://github.com/beemi/inventory-service
https://github.com/beemi/inventory-service
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/beemi/inventory-service
- Owner: beemi
- Created: 2024-02-02T04:58:56.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-02-18T15:34:47.000Z (over 2 years ago)
- Last Synced: 2024-02-18T16:36:46.520Z (over 2 years ago)
- Language: Java
- Size: 323 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π Inventory Management System
## π Description
This is a Inventory Management System that exposes a REST API to manage a inventory. It's a great starting point for
learning about Spring Boot, REST APIs, and database integration.
## π Requirements
- β Java 17
- ποΈ Maven
- π¬ MySQL
- π Spring Boot
- π¬Liquibase
- π³ Docker
- π§© Docker-compose
- π¬ Postman
## π How to Run
### βΆοΈ Run the Application Locally
To run the application directly on your machine, use the following Maven command:
```shell
./mvnw spring-boot:run
```
Create jar file
```shell
./mvnw clean install -DskipTests
```
### π³ Run the Application with Docker-compose
This application uses MySQL as the backend database. To run the application along with MySQL in Docker containers, use
the following command:
```shell
docker-compose up -d
```
### π Swagger API Documentation
π Access the OpenAPI documentation to explore and test the API endpoints:
- Swagger UI: [http://localhost:8090/swagger-ui/index.html](http://localhost:8090/swagger-ui/index.html)

### π¬ CI/CD
- GitHub Actions has been configured to run the tests and build the application on every push to the `main` branch.
- The Docker image is also built and pushed to the GitHub Container Registry.
- Docker image tag is based on the Git commit SHA.
- Git release is created for every tag.
### π¦ Packaging
- Docker Image (Dockerfile) has been configured to package the application as a Docker image.