Ctrl K
ComunidadGuías…

docker-compose.dev.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
name: bookorbit-dev

services:
  postgres:
    container_name: bookorbit-dev-db
    image: pgvector/pgvector:pg18
    restart: unless-stopped
    environment:
      POSTGRES_USER: ${DEV_POSTGRES_USER:-bookorbit}
      POSTGRES_PASSWORD: ${DEV_POSTGRES_PASSWORD:-bookorbit}
      POSTGRES_DB: ${DEV_POSTGRES_DB:-bookorbit}
      POSTGRES_HOST_AUTH_METHOD: trust
    ports:
      - "${DEV_POSTGRES_PORT:-5432}:5432"
    volumes:
      - postgres_data:/var/lib/postgresql
      - ./docker/postgres/init.sql:/docker-entrypoint-initdb.d/init.sql
    healthcheck:
      test:
        ["CMD-SHELL", 'pg_isready -U "$${POSTGRES_USER}" -d "$${POSTGRES_DB}"']
      interval: 5s
      timeout: 5s
      retries: 5

  # Opt-in: `pnpm tts:up`, or `docker compose -f docker-compose.dev.yml --profile tts up -d`.
  # Left out of the default set so `pnpm setup` and `pnpm db:up` stay quick for anyone who is not
  # working on text-to-speech; the image carries the model and is a large first pull.
  kokoro:
    container_name: bookorbit-dev-kokoro
    image: ghcr.io/remsky/kokoro-fastapi-cpu:v0.8.0
    profiles: ["tts"]
    restart: unless-stopped
    ports:
      - "${DEV_KOKORO_PORT:-8880}:8880"
    healthcheck:
      test:
        [
          "CMD-SHELL",
          'python -c "import urllib.request;urllib.request.urlopen(''http://127.0.0.1:8880/v1/audio/voices'')"',
        ]
      interval: 10s
      timeout: 5s
      retries: 12
      start_period: 60s

volumes:
  postgres_data: