architecture: remove redundant SFM service and simplify deployment

This commit is contained in:
serversdwn
2026-01-09 20:58:16 +00:00
parent 94354da611
commit 7715123053
6 changed files with 207 additions and 149 deletions

View File

@@ -1,7 +1,8 @@
services:
# --- TERRA-VIEW UI/ORCHESTRATOR (PRODUCTION) ---
# Serves HTML, proxies to SFM and SLMM backends
# --- TERRA-VIEW (PRODUCTION) ---
# Unified application: UI + Seismograph logic + SLM dashboard/proxy
# Only external HTTP dependency: SLMM backend for NL-43 device communication
terra-view-prod:
build:
context: .
@@ -14,13 +15,11 @@ services:
- PYTHONUNBUFFERED=1
- ENVIRONMENT=production
- PORT=8001
- SFM_API_URL=http://localhost:8002 # New: Points to SFM container
- SLMM_API_URL=http://localhost:8100 # Points to SLMM container
restart: unless-stopped
depends_on:
- sfm
- slmm
command: python3 -m app.main # Runs full Terra-View (UI + orchestration)
command: python3 -m app.main # Runs full Terra-View (UI + seismo + SLM)
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8001/health"]
interval: 30s
@@ -28,7 +27,7 @@ services:
retries: 3
start_period: 40s
# --- TERRA-VIEW UI/ORCHESTRATOR (DEVELOPMENT) ---
# --- TERRA-VIEW (DEVELOPMENT) ---
terra-view-dev:
build:
context: .
@@ -41,11 +40,9 @@ services:
- PYTHONUNBUFFERED=1
- ENVIRONMENT=development
- PORT=1001
- SFM_API_URL=http://localhost:8002
- SLMM_API_URL=http://localhost:8100
restart: unless-stopped
depends_on:
- sfm
- slmm
profiles:
- dev
@@ -57,30 +54,6 @@ services:
retries: 3
start_period: 40s
# --- SFM - SEISMOGRAPH FLEET MODULE (BACKEND API) ---
# Eventually will be API-only, but for now runs same code as Terra-View
sfm:
build:
context: .
dockerfile: Dockerfile.sfm
container_name: sfm
network_mode: host
volumes:
- ./data:/app/data
environment:
- PYTHONUNBUFFERED=1
- ENVIRONMENT=production
- PORT=8002 # Different port from Terra-View
- MODULE_MODE=sfm # Future: Tells app to run SFM-only mode
restart: unless-stopped
command: python3 -m app.main # For now: Same entry point, different port
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8002/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# --- SLMM (Sound Level Meter Manager) ---
slmm:
build: