108 lines
2.6 KiB
YAML
108 lines
2.6 KiB
YAML
services:
|
|
postgres:
|
|
image: postgres:16-alpine
|
|
environment:
|
|
POSTGRES_USER: bifrost
|
|
POSTGRES_PASSWORD: bifrost_password
|
|
POSTGRES_DB: bifrost
|
|
PGDATA: /var/lib/postgresql/data/pgdata
|
|
ports:
|
|
- "5432:5432"
|
|
volumes:
|
|
- postgres_data:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U bifrost -d bifrost"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
restart: unless-stopped
|
|
networks:
|
|
- bifrost_network
|
|
|
|
weaviate:
|
|
image: cr.weaviate.io/semitechnologies/weaviate:1.32.4
|
|
command:
|
|
- --host
|
|
- 0.0.0.0
|
|
- --port
|
|
- '8080'
|
|
- --scheme
|
|
- http
|
|
environment:
|
|
- CLUSTER_HOSTNAME=weaviate
|
|
- CLUSTER_ADVERTISE_ADDR=172.38.0.12
|
|
- CLUSTER_GOSSIP_BIND_PORT=7946
|
|
- CLUSTER_DATA_BIND_PORT=7947
|
|
- DISABLE_TELEMETRY=true
|
|
- PERSISTENCE_DATA_PATH=/var/lib/weaviate
|
|
- DEFAULT_VECTORIZER_MODULE=none
|
|
- ENABLE_MODULES=
|
|
- AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=true
|
|
- LOG_LEVEL=info
|
|
ports:
|
|
- "9000:8080"
|
|
volumes:
|
|
- weaviate_data:/var/lib/weaviate
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--spider", "-q", "http://localhost:8080/v1/.well-known/ready"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
networks:
|
|
bifrost_network:
|
|
ipv4_address: 172.38.0.12
|
|
|
|
# Redis Stack instance for vector store tests
|
|
redis-stack:
|
|
image: redis/redis-stack:7.4.0-v6
|
|
command: redis-stack-server --protected-mode no
|
|
ports:
|
|
- "6379:6379"
|
|
- "8001:8001" # RedisInsight web UI
|
|
volumes:
|
|
- redis_data:/data
|
|
networks:
|
|
bifrost_network:
|
|
ipv4_address: 172.38.0.13
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "ping"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
# Qdrant instance for vector store tests
|
|
qdrant:
|
|
image: qdrant/qdrant:v1.16.0
|
|
ports:
|
|
- "6333:6333" # REST API
|
|
- "6334:6334" # gRPC API
|
|
volumes:
|
|
- qdrant_data:/qdrant/storage
|
|
networks:
|
|
bifrost_network:
|
|
ipv4_address: 172.38.0.14
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "bash -c 'echo > /dev/tcp/localhost/6333'"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
networks:
|
|
bifrost_network:
|
|
driver: bridge
|
|
ipam:
|
|
config:
|
|
- subnet: 172.38.0.0/16
|
|
gateway: 172.38.0.1
|
|
|
|
volumes:
|
|
postgres_data:
|
|
driver: local
|
|
weaviate_data:
|
|
driver: local
|
|
redis_data:
|
|
driver: local
|
|
qdrant_data:
|
|
driver: local
|
|
|