Docker Compose Servisleri
Servis Tablosu
| Servis | Image | Port | RAM | Health Check |
|---|---|---|---|---|
| postgres | timescale/timescaledb:pg15 | 127.0.0.1:5432 | 768MB | pg_isready |
| redis | redis:7-alpine | internal | 128MB | redis-cli ping |
| emqx | emqx/emqx:5.8.3 | 1883, 8883, 18083 | 384MB | emqx ping |
| backend | zeus-backend | 127.0.0.1:8000 | 512MB | HTTP /health |
| frontend | zeus-frontend | 127.0.0.1:3020→3000 | 256MB | HTTP 3000 (container internal) |
| modbus-poller | zeus-modbus-poller | 127.0.0.1:8085 | 128MB | HTTP /ready |
| celery-worker | zeus-backend | internal | 256MB | celery inspect ping |
| celery-beat | zeus-backend | internal | 128MB | PID dosya |
| minio | minio/minio | 127.0.0.1:9000,9001 | 256MB | HTTP health |
| nginx | nginx:alpine | 0.0.0.0:80,443 | 64MB | nginx -t |
| certbot | certbot/certbot | internal | — | — |
| autoheal | willfarrell/autoheal | internal | 64MB | — |
Toplam RAM: ~3GB
Port Güvenliği
- localhost-only: PostgreSQL, Redis, MinIO, backend, frontend, modbus-poller, EMQX dashboard
- 0.0.0.0 (public): nginx (80/443), EMQX TLS (8883)
Volumes
postgres-data # PostgreSQL verileri
redis-data # Redis persistence
minio-data # S3 firmware depolama
emqx-data # MQTT broker verisi
modbus-poller-logs # Modbus polling logları
firmware-storage # OTA firmware binary'leri
certbot-webroot # Let's Encrypt doğrulama
Network
Tüm servisler zeus-net bridge network üzerinde iletişim kurar. Container DNS adları: postgres, redis, emqx, backend, frontend vb.