graph TB
subgraph "studio einszwovier Web Platform"
LP[đ Landing Page
Port 80]
About[âšī¸ About Page
/about]
CostCalc[đ° Cost Calculator
/cost]
LP --> About
LP --> CostCalc
end
subgraph "Services Accessible from Landing Page"
BookStack[đ BookStack
Port 6875
Wissenssammlung]
OpenWebUI[đ¤ Open WebUI
Port 8080
LLM Chatbot]
JupyterHub[đ JupyterHub
Port 8001
Python Notebooks]
Forgejo[đĻ Forgejo
Port 3003
Git Server]
ElementWeb[đŦ Element Web
Port 8082
Matrix Chat]
Portainer[đŗ Portainer
Port 9000
Admin Panel]
LP -.->|Link| BookStack
LP -.->|Link| OpenWebUI
LP -.->|Link| JupyterHub
LP -.->|Link| Forgejo
LP -.->|Link| ElementWeb
LP -.->|Link| Portainer
end
subgraph "Backend Services"
Synapse[đ¨ Synapse
Port 8008
Matrix Server]
Ollama[đŽ Ollama
Port 11434
LLM Engine]
MariaDB[(đž MariaDB
BookStack DB)]
ElementWeb --> Synapse
OpenWebUI --> Ollama
BookStack --> MariaDB
CostCalc --> Synapse
end
subgraph "Educational Resources"
Notebooks[đ Drone Programming
djitellopy Package]
GitRepos[đĻ Code Repositories
Project Source]
Knowledge[đ Documentation
Guides & Tutorials]
JupyterHub --> Notebooks
Forgejo --> GitRepos
BookStack --> Knowledge
end
subgraph "Persistent Storage"
PDFUploads[đ PDF Files
data/uploads/]
CoursesCSV[đ Courses CSV
data/courses.csv]
MatrixData[(đī¸ Matrix Data
matrix/data/)]
JupyterVols[(đž Jupyter Volumes
User Workspaces)]
ForgejoData[(đ Forgejo Data
forgejo/data/)]
CostCalc --> PDFUploads
About --> CoursesCSV
Synapse --> MatrixData
JupyterHub --> JupyterVols
Forgejo --> ForgejoData
end
subgraph "Infrastructure"
Watchtower[đ Watchtower
Auto-Updates
Every 24h]
Network[đ einszwovier_network
Docker Network]
end
classDef webapp fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef service fill:#fff3e0,stroke:#f57c00,stroke-width:2px
classDef backend fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef storage fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef edu fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef infra fill:#fafafa,stroke:#616161,stroke-width:2px
class LP,About,CostCalc webapp
class BookStack,OpenWebUI,JupyterHub,Forgejo,ElementWeb,Portainer service
class Synapse,Ollama,MariaDB backend
class PDFUploads,CoursesCSV,MatrixData,JupyterVols,ForgejoData storage
class Notebooks,GitRepos,Knowledge edu
class Watchtower,Network infra