memos/docker/docker-compose.yml

72 lines
1.4 KiB
YAML

name: memos-dev
services:
memos:
container_name: memos-api-docker
build:
context: ..
dockerfile: docker/Dockerfile
ports:
- "8000:8000"
env_file:
- ../.env
depends_on:
- neo4j
- qdrant
environment:
- PYTHONPATH=/app/src
- HF_ENDPOINT=https://hf-mirror.com
- QDRANT_HOST=qdrant-docker
- QDRANT_PORT=6333
- NEO4J_URI=bolt://neo4j-docker:7687
volumes:
- ../src:/app/src
- .:/app/docker
networks:
- memos_network
neo4j:
image: neo4j:5.26.6
container_name: neo4j-docker
ports:
- "7474:7474" # HTTP
- "7687:7687" # Bolt
healthcheck:
test: wget http://localhost:7474 || exit 1
interval: 1s
timeout: 10s
retries: 20
start_period: 3s
environment:
NEO4J_ACCEPT_LICENSE_AGREEMENT: "yes"
NEO4J_AUTH: "neo4j/12345678"
volumes:
- neo4j_data:/data
- neo4j_logs:/logs
networks:
- memos_network
qdrant:
image: qdrant/qdrant:v1.15.3
container_name: qdrant-docker
ports:
- "6333:6333" # REST API
- "6334:6334" # gRPC API
volumes:
- qdrant_data:/qdrant/storage
environment:
QDRANT__SERVICE__GRPC_PORT: 6334
QDRANT__SERVICE__HTTP_PORT: 6333
restart: unless-stopped
networks:
- memos_network
volumes:
neo4j_data:
neo4j_logs:
qdrant_data:
networks:
memos_network:
driver: bridge