Architecture¶
Service Topology¶
%%{init: {"flowchart": {"defaultRenderer": "elk", "nodeSpacing": 40, "rankSpacing": 50}}}%%
flowchart TD
classDef exposed fill:#2d3748,stroke:#4299e1,stroke-width:2px,color:#fff,rx:5px,ry:5px;
classDef internal fill:#1a202c,stroke:#718096,stroke-width:1px,color:#e2e8f0,rx:5px,ry:5px;
classDef datastore fill:#2b6cb0,stroke:#63b3ed,stroke-width:2px,color:#fff,rx:8px,ry:8px;
takeout_manager["takeout-manager
takeout-manager:${TAKEOUT_MANAGER_IMAGE_TAG:-latest}"]:::internal takeout_worker["takeout-worker
takeout-worker:${TAKEOUT_MANAGER_IMAGE_TAG:-latest}"]:::internal
takeout-manager:${TAKEOUT_MANAGER_IMAGE_TAG:-latest}"]:::internal takeout_worker["takeout-worker
takeout-worker:${TAKEOUT_MANAGER_IMAGE_TAG:-latest}"]:::internal
Startup Sequence¶
sequenceDiagram
autonumber
participant takeout_manager as takeout-manager
participant takeout_worker as takeout-worker
Services¶
takeout-manager¶
Image: ${TAKEOUT_MANAGER_REGISTRY_URL:-ghcr.io}/${TAKEOUT_MANAGER_REGISTRY_NAMESPACE:-your-username}/takeout-manager:${TAKEOUT_MANAGER_IMAGE_TAG:-latest}
| Property | Value |
|---|---|
| Networks | traefik-public |
| Depends on | — |
Environment:
Volumes:
takeout-manager-db:/app/db
takeout-worker¶
Image: ${TAKEOUT_MANAGER_REGISTRY_URL:-ghcr.io}/${TAKEOUT_MANAGER_REGISTRY_NAMESPACE:-your-username}/takeout-worker:${TAKEOUT_MANAGER_IMAGE_TAG:-latest}
| Property | Value |
|---|---|
| Networks | traefik-public |
| Depends on | — |
Environment:
Volumes:
takeout-downloads:/downloadstakeout-pictures:/picturestakeout-videos:/videos
Network Flow¶
sankey-beta
Net: traefik-public, takeout_manager, 1
Net: traefik-public, takeout_worker, 1