livrare lot 2

This commit is contained in:
EVOTECH IT SRL 2026-07-10 03:39:53 -07:00
commit 8ecc78e729
763 changed files with 164593 additions and 0 deletions

View file

@ -0,0 +1,168 @@
# =============================================================================
# DIDI Platform - Data Layer Services
# =============================================================================
# PostgreSQL, RabbitMQ, MinIO, Redis Commander, PgAdmin
# Admin UIs bound to 127.0.0.1 (VPN access only)
# =============================================================================
name: didi-data-layer
services:
# ===========================================================================
# PostgreSQL - Local Staging Database
# ===========================================================================
staging-dataLayer-postgres:
image: postgres:15-alpine
container_name: staging-dataLayer-postgres
restart: unless-stopped
environment:
POSTGRES_DB: misinformation_db
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres123
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- didi-staging-postgres-data:/var/lib/postgresql/data
- didi-staging-postgres-backups:/backups
# No ports exposed - accessible only within Docker network on port 5432
networks:
- didi-network
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d misinformation_db"]
interval: 30s
timeout: 10s
retries: 3
start_period: 30s
# ===========================================================================
# RabbitMQ - Message Queue
# ===========================================================================
staging-dataLayer-rabbitmq:
image: rabbitmq:3.12.6-management-alpine
container_name: staging-dataLayer-rabbitmq
restart: unless-stopped
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: rabbitmq123
RABBITMQ_DEFAULT_VHOST: /
volumes:
- didi-staging-rabbitmq-data:/var/lib/rabbitmq
ports:
- "15672:15672" # RabbitMQ Management UI
- "127.0.0.1:5672:5672" # AMQP - localhost only
networks:
- didi-network
healthcheck:
test: ["CMD", "rabbitmq-diagnostics", "-q", "ping"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
# ===========================================================================
# MinIO - Object Storage
# ===========================================================================
staging-dataLayer-minio:
image: minio/minio:RELEASE.2024-08-29T01-40-52Z
container_name: staging-dataLayer-minio
restart: unless-stopped
command: server /data --console-address ":9001"
environment:
MINIO_ROOT_USER: minioadmin
MINIO_ROOT_PASSWORD: minio123
MINIO_REGION_NAME: us-east-1
MINIO_BROWSER: "on"
ports:
- "9001:9001" # MinIO Console UI
- "9000:9000"
volumes:
- didi-staging-minio-data:/data
networks:
- didi-network
healthcheck:
test: ["CMD", "mc", "ready", "local"]
interval: 30s
timeout: 10s
retries: 3
start_period: 30s
# ===========================================================================
# PgAdmin - Database Administration
# ===========================================================================
staging-dataLayer-pgadmin:
image: dpage/pgadmin4:latest
container_name: staging-dataLayer-pgadmin
restart: unless-stopped
environment:
PGADMIN_DEFAULT_EMAIL: admin@example.com
PGADMIN_DEFAULT_PASSWORD: admin123
PGADMIN_CONFIG_SERVER_MODE: "False"
PGADMIN_CONFIG_MASTER_PASSWORD_REQUIRED: "False"
volumes:
- didi-staging-pgadmin-data:/var/lib/pgadmin
- ./pgadmin/servers.json:/pgadmin4/servers.json:ro
- ./pgadmin/pgpass:/pgadmin4/pgpass:ro
ports:
- "5050:80" # pgAdmin UI
networks:
- didi-network
# ===========================================================================
# Redis Commander - Redis Administration
# ===========================================================================
staging-dataLayer-redis-commander:
image: rediscommander/redis-commander:latest
container_name: staging-dataLayer-redis-commander
restart: unless-stopped
environment:
REDIS_HOSTS: "production:didi-cache:6379:0:redis123"
URL_PREFIX: /redis-commander
# No external ports - access via Kong
networks:
- didi-network
healthcheck:
test: ["CMD", "wget", "-q", "-O", "/dev/null", "http://127.0.0.1:8081/"]
interval: 30s
timeout: 10s
retries: 3
# ===========================================================================
# Admin Dashboard - Infrastructure Monitoring (HTTPS)
# ===========================================================================
didi-admin:
image: didi-admin:latest
container_name: didi-admin
restart: unless-stopped
environment:
NODE_ENV: production
REACT_APP_STAGING_MODE: "false"
REACT_APP_HOST: "10.11.10.12"
REACT_APP_FRAMEWORK_API_URL: "http://didi-framework:3005"
REACT_APP_API_BASE_URL: "https://didi365.eu"
REACT_APP_KEYCLOAK_URL: "https://didi365.eu/auth"
REACT_APP_KEYCLOAK_REALM: "didi-admins"
REACT_APP_KEYCLOAK_CLIENT_ID: "admin-dashboard"
ports:
- "3000:443"
networks:
- didi-network # unified — all DIDI + AI platform on this single network
healthcheck:
test: ["CMD", "curl", "-k", "-f", "-s", "https://127.0.0.1:443/"]
interval: 30s
timeout: 10s
retries: 3
networks:
didi-network:
external: true # single shared network for all DIDI + AI platform stacks
volumes:
didi-staging-postgres-data:
external: true
didi-staging-postgres-backups:
name: didi-staging-postgres-backups
didi-staging-rabbitmq-data:
name: didi-staging-rabbitmq-data
didi-staging-minio-data:
external: true
didi-staging-pgadmin-data:
external: true