services: app: build: context: . dockerfile: Dockerfile.dev ports: - "8080:8080" volumes: - .:/app environment: - DB_HOST=postgres - DB_PORT=5432 - DB_USER=postgres - DB_PASSWORD=postgres - DB_NAME=tercul - REDIS_ADDR=redis:6379 - WEAVIATE_HOST=weaviate:8080 - WEAVIATE_SCHEME=http depends_on: - postgres - redis - weaviate postgres: image: pgvector/pgvector:pg16 ports: - "5432:5432" environment: - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres - POSTGRES_DB=tercul # Set to trust all connections for development # Configure PostgreSQL to allow connections from all IPs volumes: - postgres-data:/var/lib/postgresql/data redis: image: redis:alpine ports: - "6379:6379" volumes: - redis-data:/data weaviate: image: semitechnologies/weaviate:1.24.1 ports: - "8090:8080" environment: - QUERY_DEFAULTS_LIMIT=25 - AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=true - PERSISTENCE_DATA_PATH=/var/lib/weaviate - DEFAULT_VECTORIZER_MODULE=none - CLUSTER_HOSTNAME=node1 volumes: - weaviate-data:/var/lib/weaviate volumes: postgres-data: redis-data: weaviate-data: