https://github.com/danielsarmiento04/microservice_management

https://github.com/danielsarmiento04/microservice_management

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.0%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: DanielSarmiento04
  • Default Branch: main
  • Size: 1.95 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created almost 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme

Readme.md

Microservices Assembly with Docker Compose

Jose Daniel Sarmiento , Manuel Ayala | { jose2192232, jose2195529 } @correo.uis.edu.co

Resume

This repository contains two microservices orchestrated using Docker Compose: - User & Client Service: Manages user authentication, client profiles, and related data. - Routine Maintenance Service: Handles business logic related to routine maintenance tasks.

Table of Contents

Prerequisites

Before you begin, ensure you have met the following requirements: Docker & Docker Compose installed on your machine. (Optional) make installed for easier commands execution.

Architecture Overview

The system consists of two microservices: User & Client Service: Responsible for managing user authentication, authorization, and client data. Routine Maintenance Service: Handles all the business logic and rules for managing maintenance routines. Both services communicate through HTTP and share common environment variables defined in the .env file.

Getting Started

Clone the Repository

git clone https://github.com/DanielSarmiento04/microservice_management cd microservice_management

Environment Variables

Copy the .env.example file to .env and modify the values as needed:

cp .env.example .env

Update the following variables in .env: USERDBURI: Connection string for the User & Client database. ROUTINEDBURI: Connection string for the Routine Maintenance database. JWT_SECRET: Secret key for JWT tokens.

Docker Compose Up

Build and start the services: docker-compose up --build

The services will be available at:

  • User & Client Service: http://localhost:8000
  • Routine Maintenance Service: http://localhost:8001

Services Overview

User & Client Service

Description: Handles all user and client-related operations. Technologies: FastAPI, MongoDB.

  • User & Client Service: http://localhost:8000/docs
  • Routine Maintenance Service: http://localhost:8001/docs

Common Commands

  • Build & Start Services:

docker-compose up --build

  • Stop Services:

docker-compose down

  • Rebuild Specific Service:

docker-compose up --build service_name

  • View Logs:

docker-compose logs -f

Troubleshooting

Database Connection Issues:

Verify that the database URIs in the .env file are correct. Ensure that the database containers are running.

Service Not Responding:

Check the logs using docker-compose logs -f. Ensure that the ports are not being used by another process.

Contributing

If you have suggestions or find a bug, feel free to create an issue or submit a pull request. Please ensure your contributions align with the project's coding guidelines.

Owner

  • Name: José Daniel Sarmiento
  • Login: DanielSarmiento04
  • Kind: user
  • Location: Santander, Colombia
  • Company: Axede S.A

Programmer, mechanical engineer and entrepreneur, my goal is to improve the quality of life of people, technology is the tool I use.

GitHub Events

Total
  • Push event: 1
Last Year
  • Push event: 1

Dependencies

docker-compose.yml docker
  • mongo latest
requirements.txt pypi
  • annotated-types ==0.7.0
  • anyio ==4.4.0
  • bcrypt ==4.0.1
  • cffi ==1.17.1
  • click ==8.1.7
  • colorama ==0.4.6
  • cryptography ==43.0.1
  • dnspython ==2.6.1
  • dotenv-python ==0.0.1
  • ecdsa ==0.19.0
  • fastapi ==0.115.4
  • h11 ==0.14.0
  • idna ==3.8
  • passlib ==1.7.4
  • pyasn1 ==0.6.0
  • pycparser ==2.22
  • pydantic ==2.8.2
  • pydantic_core ==2.20.1
  • pymongo ==4.10.1
  • python-dotenv ==1.0.1
  • python-jose ==3.3.0
  • python-multipart ==0.0.9
  • rsa ==4.9
  • six ==1.16.0
  • sniffio ==1.3.1
  • starlette ==0.41.2
  • typing_extensions ==4.12.2
  • uvicorn ==0.32.0