Skip to main content
Documentation

Microservices

OpenDDE runs three computational microservices alongside the main backend. Each is a lightweight HTTP server wrapping a specialized tool.

P2Rank service

Port5001
TechnologyJava (P2Rank) + Python Flask wrapper
Docker image~1.2 GB

P2Rank is a machine-learning tool for predicting ligand-binding sites. The service accepts a protein structure file (CIF/PDB) and returns ranked pockets with scores and residue lists.

# Internal API
POST http://p2rank:5001/predict
Content-Type: multipart/form-data
Body: structure=@protein.cif

RDKit service

Port5002
TechnologyPython + RDKit + Flask
Docker image~800 MB

Handles all cheminformatics: molecular property calculation, SMILES validation, 2D depiction, fingerprint computation, and similarity calculations.

ImmuneBuilder service

Port5003
TechnologyPython + PyTorch + ImmuneBuilder
Docker image~2 GB (includes PyTorch)

Predicts antibody 3D structures from amino acid sequences. Includes CDR loop annotation and confidence scoring.

Health checks

All services expose a GET /health endpoint. Docker Compose uses these to ensure services are ready before accepting requests:

healthcheck:
  test: ["CMD", "curl", "-f", "http://localhost:5001/health"]
  interval: 30s
  timeout: 10s
  retries: 3

Next: Database schema →