From f91d5d57a1c7204fe52af9ccc28a6a3e089f18f6 Mon Sep 17 00:00:00 2001 From: Saravana Kumar Date: Fri, 29 May 2026 01:30:51 +0000 Subject: [PATCH] =?UTF-8?q?feat(infra):=20Phase=202.3=20=E2=80=94=20add=20?= =?UTF-8?q?memory=20limits=20to=20Docker=20services?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit deploy.resources.limits.memory applied per roadmap table. Limits derived from 2-day RSS baseline (2026-05-27-29). Takes effect on next docker compose up — no running containers affected. Co-Authored-By: Claude Sonnet 4.6 --- docker-compose.ecosystem.yml | 148 +++++++++++++++++++++++++++++++++++ 1 file changed, 148 insertions(+) diff --git a/docker-compose.ecosystem.yml b/docker-compose.ecosystem.yml index 84bdf549..d130c1f1 100644 --- a/docker-compose.ecosystem.yml +++ b/docker-compose.ecosystem.yml @@ -61,6 +61,10 @@ services: retries: 12 start_period: 20s restart: unless-stopped + deploy: + resources: + limits: + memory: 1g azurite: image: mcr.microsoft.com/azure-storage/azurite:3.35.0 @@ -75,6 +79,10 @@ services: timeout: 5s retries: 6 restart: unless-stopped + deploy: + resources: + limits: + memory: 256m mailpit: image: axllent/mailpit:v1.27.5 @@ -87,6 +95,10 @@ services: timeout: 5s retries: 6 restart: unless-stopped + deploy: + resources: + limits: + memory: 128m loki: image: grafana/loki:3.3.2 @@ -102,6 +114,10 @@ services: timeout: 5s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 384m grafana: image: grafana/grafana:11.4.0 @@ -124,6 +140,10 @@ services: timeout: 5s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 384m prometheus: image: prom/prometheus:v3.5.0 @@ -147,6 +167,10 @@ services: timeout: 5s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 384m node-exporter: image: prom/node-exporter:v1.9.1 @@ -163,6 +187,10 @@ services: timeout: 5s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 128m cadvisor: image: gcr.io/cadvisor/cadvisor:v0.49.1 @@ -184,6 +212,10 @@ services: timeout: 5s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 256m valkey: image: valkey/valkey:8-alpine @@ -204,6 +236,10 @@ services: timeout: 5s retries: 5 restart: unless-stopped + deploy: + resources: + limits: + memory: 128m gateway: image: traefik:v3.3 @@ -225,6 +261,10 @@ services: loki: condition: service_started restart: unless-stopped + deploy: + resources: + limits: + memory: 128m caddy: image: caddy:2-alpine @@ -244,6 +284,10 @@ services: mcp-server: condition: service_healthy restart: unless-stopped + deploy: + resources: + limits: + memory: 256m # ═════════════════════════════════════════════════════════════════ # PLATFORM SERVICES (from this repo) @@ -279,6 +323,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m extraction-service: build: @@ -304,6 +352,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m mcp-server: build: @@ -330,6 +382,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 384m # ═════════════════════════════════════════════════════════════════ # PLATFORM DASHBOARDS (from this repo) @@ -359,6 +415,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m tracker-web: build: @@ -381,6 +441,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m # ═════════════════════════════════════════════════════════════════ # PRODUCT BACKENDS (from sibling repos) @@ -406,6 +470,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m chronomind-backend: build: @@ -427,6 +495,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m jarvisjr-backend: build: @@ -448,6 +520,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m nomgap-backend: build: @@ -469,6 +545,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m mindlyst-backend: build: @@ -490,6 +570,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m lysnrai-backend: build: @@ -511,6 +595,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m notelett-backend: build: @@ -533,6 +621,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m flowmonk-backend: build: @@ -554,6 +646,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m actiontrail-backend: build: @@ -575,6 +671,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m localmemgpt-backend: build: @@ -601,6 +701,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m efforise-backend: build: @@ -624,6 +728,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m # ═════════════════════════════════════════════════════════════════ # PRODUCT WEB APPS (from sibling repos) @@ -656,6 +764,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m chronomind-web: build: @@ -682,6 +794,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m jarvisjr-web: build: @@ -707,6 +823,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m flowmonk-web: build: @@ -734,6 +854,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m notelett-web: build: @@ -760,6 +884,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m mindlyst-web: build: @@ -785,6 +913,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m # TODO(nomgap): Decide whether local Docker smoke tests still need a web # service once the Vercel deployment path is fully documented. @@ -816,6 +948,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m localmemgpt-web: build: @@ -843,6 +979,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m efforise-web: build: @@ -860,6 +1000,10 @@ services: timeout: 10s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m # ── Local LLM Lab (no backend — dashboard talks directly to Ollama) ── @@ -887,6 +1031,10 @@ services: timeout: 5s retries: 3 restart: unless-stopped + deploy: + resources: + limits: + memory: 512m # ═════════════════════════════════════════════════════════════════ # VOLUMES