services: db: image: mongo:8 environment: MONGO_INITDB_ROOT_USERNAME: mongo MONGO_INITDB_ROOT_PASSWORD: mongo MONGO_INITDB_DATABASE: dev ports: - "27017:27017" volumes: - ./devdb:/data/db healthcheck: test: ["CMD", "mongosh", "--eval", '''db.adminCommand("ping")'''] interval: 10s timeout: 5s retries: 3 restart: unless-stopped app: build: context: . dockerfile: Dockerfile command: ["deno", "run", "-A", "--watch", "main.ts"] environment: NODE_ENV: development HOST: 0.0.0.0 SPRK_PORT: 3000 SPRK_DB_URI: mongodb://mongo:mongo@db:27017 SPRK_DB_NAME: dev SPRK_ADMIN_PASSWORDS: "12345" env_file: - .env ports: - "4000:3000" depends_on: db: condition: service_healthy develop: watch: - path: ./api action: sync target: /app/api - path: ./lexicons action: rebuild - path: ./services action: sync target: /app/services - path: ./utils action: sync target: /app/utils - path: ./data-plane action: sync target: /app/data-plane - path: ./main.ts action: sync target: /app/main.ts - path: ./views action: sync target: /app/views - path: ./data-plane action: sync target: /app/data-plane - path: ./hydration action: sync target: /app/hydration restart: unless-stopped ingester: build: context: . dockerfile: Dockerfile command: ["deno", "run", "-A", "--watch", "ingest.ts"] environment: NODE_ENV: development HOST: 0.0.0.0 SPRK_DB_URI: mongodb://mongo:mongo@db:27017 SPRK_DB_NAME: dev ADMIN_PASSWORD: "12345" env_file: - .env depends_on: db: condition: service_healthy develop: watch: - path: ./api action: sync target: /app/api - path: ./lexicons action: rebuild - path: ./services action: sync target: /app/services - path: ./utils action: sync target: /app/utils - path: ./data-plane action: sync target: /app/data-plane - path: ./main.ts action: sync target: /app/main.ts - path: ./views action: sync target: /app/views - path: ./data-plane action: sync target: /app/data-plane - path: ./hydration action: sync target: /app/hydration restart: unless-stopped