Adding weaviate, faiss, pgvector, chroma, redis, elasticsearch, milvus vector store to openmemory (#3366)

Co-authored-by: Vikram Iyer <vikramiyer@mac.local.meter>
This commit is contained in:
VikramIyer125
2025-08-26 13:17:39 -07:00
committed by GitHub
parent 8c8368781d
commit 6237a6acb9
13 changed files with 562 additions and 21 deletions
+11
View File
@@ -0,0 +1,11 @@
services:
mem0_store:
image: ghcr.io/chroma-core/chroma:latest
restart: unless-stopped
environment:
- CHROMA_SERVER_HOST=0.0.0.0
- CHROMA_SERVER_HTTP_PORT=8000
ports:
- "8000:8000"
volumes:
- mem0_storage:/data
+15
View File
@@ -0,0 +1,15 @@
services:
mem0_store:
image: docker.elastic.co/elasticsearch/elasticsearch:8.13.4
restart: unless-stopped
environment:
- discovery.type=single-node
- xpack.security.enabled=false
- ES_JAVA_OPTS=-Xms512m -Xmx512m
ulimits:
memlock: { soft: -1, hard: -1 }
nofile: { soft: 65536, hard: 65536 }
ports:
- "9200:9200"
volumes:
- mem0_storage:/usr/share/elasticsearch/data
+3
View File
@@ -0,0 +1,3 @@
services:
# FAISS is a local file-based vector store, so no separate container is needed
# Data will be persisted through volume mounts in the main application
+43
View File
@@ -0,0 +1,43 @@
services:
etcd:
image: quay.io/coreos/etcd:v3.5.5
restart: unless-stopped
environment:
- ETCD_AUTO_COMPACTION_MODE=revision
- ETCD_QUOTA_BACKEND_BYTES=4294967296
- ETCD_SNAPSHOT_COUNT=50000
- ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379
- ETCD_ADVERTISE_CLIENT_URLS=http://etcd:2379
- ETCD_LISTEN_PEER_URLS=http://0.0.0.0:2380
- ETCD_INITIAL_ADVERTISE_PEER_URLS=http://etcd:2380
- ETCD_INITIAL_CLUSTER=default=http://etcd:2380
- ETCD_NAME=default
- ETCD_DATA_DIR=/etcd
volumes:
- ./data/milvus/etcd:/etcd
minio:
image: minio/minio:RELEASE.2023-10-25T06-33-25Z
restart: unless-stopped
command: server /minio_data
environment:
- MINIO_ACCESS_KEY=minioadmin
- MINIO_SECRET_KEY=minioadmin
volumes:
- ./data/milvus/minio:/minio_data
mem0_store:
image: milvusdb/milvus:v2.4.7
restart: unless-stopped
command: ["milvus", "run", "standalone"]
depends_on:
- etcd
- minio
environment:
- ETCD_ENDPOINTS=etcd:2379
- MINIO_ADDRESS=minio:9000
ports:
- "19530:19530"
- "9091:9091"
volumes:
- ./data/milvus/milvus:/var/lib/milvus
+19
View File
@@ -0,0 +1,19 @@
services:
mem0_store:
image: opensearchproject/opensearch:2.13.0
restart: unless-stopped
user: "1000:1000"
environment:
- discovery.type=single-node
- plugins.security.disabled=true
- OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m
- OPENSEARCH_INITIAL_ADMIN_PASSWORD=Openmemory123!
- bootstrap.memory_lock=true
ulimits:
memlock: { soft: -1, hard: -1 }
nofile: { soft: 65536, hard: 65536 }
ports:
- "9200:9200"
- "9600:9600"
volumes:
- mem0_storage:/usr/share/opensearch/data
+12
View File
@@ -0,0 +1,12 @@
services:
mem0_store:
image: pgvector/pgvector:pg16
restart: unless-stopped
environment:
- POSTGRES_DB=mem0
- POSTGRES_USER=mem0
- POSTGRES_PASSWORD=mem0
ports:
- "5432:5432"
volumes:
- mem0_storage:/var/lib/postgresql/data
+8
View File
@@ -0,0 +1,8 @@
services:
mem0_store:
image: qdrant/qdrant:latest
restart: unless-stopped
ports:
- "6333:6333"
volumes:
- mem0_storage:/mem0/storage
+13
View File
@@ -0,0 +1,13 @@
services:
mem0_store:
image: redis/redis-stack-server:latest
restart: unless-stopped
ports:
- "6379:6379"
volumes:
- mem0_storage:/var/lib/redis-stack
command: >
redis-stack-server
--appendonly yes
--appendfsync everysec
--save 900 1 300 10 60 10000
+14
View File
@@ -0,0 +1,14 @@
services:
mem0_store:
image: semitechnologies/weaviate:latest
restart: unless-stopped
environment:
- QUERY_DEFAULTS_LIMIT=25
- AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED=true
- PERSISTENCE_DATA_PATH=/var/lib/weaviate
- CLUSTER_HOSTNAME=node1
- WEAVIATE_CLUSTER_URL=http://mem0_store:8080
ports:
- "8080:8080"
volumes:
- mem0_storage:/var/lib/weaviate