1 Dependancies
deon edited this page 2024-04-08 05:05:38 +00:00

Architecture

flowchart LR;  
  BROWSER(Web Browser) -.-> NGINX;
  FTN_MAILER-IN(FTN Mailer - INBOUND) -.-> HAPROXY;

  subgraph CLRGHOUZ
    CLRGHOUZ-WEB ---> CLRGHOUZ-QUEUE(Queue Runner);
    CLRGHOUZ-SCHED(Scheduler) ---> CLRGHOUZ-QUEUE;
  end

  subgraph FRONTEND
    HAPROXY -.-> CLRGHOUZ-WEB;
    NGINX -.-> CLRGHOUZ-WEB(Front end);
  end

  subgraph DATABASE
    CLRGHOUZ-WEB --- DB[(PostgreSQL)];
  end

  subgraph STORE
    CLRGHOUZ-WEB --- MINIO[(Minio)];
  end

  CLRGHOUZ-SCHED --- DB;
  CLRGHOUZ-QUEUE --- DB;
  CLRGHOUZ-QUEUE --- MINIO;
  CLRGHOUZ-QUEUE -.-> FTN_MAILER-OUT(FTN Mailer - OUTBOUND);
  

System Dependencies

Clearing houz (clrghouz) uses the following additional components, during the day to day life of being an FTN mailer.

  • minio - is used to store incoming files, that are received via FTN mailer sessions (with an accompanying TIC file). Files sent onward to other systems, are sent from minio
  • postgresql - is used to store incoming mail, that is received via FTN mailer sessions, as well as the overall configuration of nodes, zones, domains and the web interface
  • docker - to run all the necessary containers that make up clrghouz
  • haproxy - to front all your TCP connections (optional)
  • nginx - to front your HTTP connection to the website (optional)

These components, in addition to the the clrghouz image, can run on the same host, or be run across multiple hosts - with the only requirement being IP (v4 or v6) configured and the hosts can communicate with other on appropriate ports.