Docs

Docs

Microservices Architecture — Docker Compose Setup!

Draw

Welcome to the documentation for the microservices architecture development environment! This repository includes a docker-compose.yml file designed to spin up all necessary services for local development.


🚀 Overview

This Docker Compose setup orchestrates multiple services that together form a microservices-based application ecosystem. It is only intended for development purposes and includes:

  • NATS & NATS UI: Messaging system with JetStream enabled for event streaming and an admin UI for monitoring.
  • MongoDB: Document-oriented NoSQL database for data storage.
  • MinIO: High-performance, S3-compatible object storage.
  • Various Application Services:
    • Gateway: API gateway routing requests.
    • User Service: Manages user data and authentication.
    • Angebot Service: Business-specific service for offers management.
    • Media Service: Handles media file uploads and processing.
  • Frontend & NGINX: Web frontend served through NGINX with HTTPS support.

📦 Services Included

ServiceDescriptionPorts
natsMessaging server with JetStream enabled4222, 8222
nats-uiNATS monitoring UI31311
mongoMongoDB database27017
minioObject storage (S3 compatible)9000 (API), 9001 (Console)
gatewayAPI Gateway8081
user-serviceUser management8082
angebot-serviceOffers management8084
media-serviceMedia handling8083
frontendWeb frontend8080
nginxReverse proxy & HTTPS termination80, 443

⚙️ How to Run

  1. Make sure you have Docker and Docker Compose installed.

  2. Clone the repository:

    git clone https://github.com/Konzepte-moderner-Softwareentwicklung/Backend.git
    cd Backend