This project has two FastAPI services:
- app-service: Handles products and image associations.
- storage-service: Handles file uploads and serves them via URL.
- Clone the repo
git clone https://github.com/mofalih64/presigned-url-File-storing-microservices.git cd presigned-url-File-storing-microservices - Setup environment
Inside each service (app-service/, storage-service/):
Copy .env.example to .env
you are now ready to run the project
- Run the project docker-compose up --build
4.🔗 API Docs App Service: http://localhost:8000/docs#/
Storage Service: http://localhost:8001/docs#/
A- File uploads are secured using signed tokens based on file metadata.
B-Uploaded files are stored locally and accessible via generated public URLs.
C-Image IDs are validated before associating with products.
D- each service has its own database.