48 lines
1 KiB
YAML
48 lines
1 KiB
YAML
services:
|
|
graph:
|
|
build:
|
|
context: .
|
|
ports:
|
|
- "8000:8000"
|
|
healthcheck:
|
|
test:
|
|
[
|
|
"CMD",
|
|
"python",
|
|
"-c",
|
|
"import urllib.request; urllib.request.urlopen('http://localhost:8000/healthcheck')",
|
|
]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 3
|
|
depends_on:
|
|
neo4j:
|
|
condition: service_healthy
|
|
environment:
|
|
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
|
- NEO4J_URI=bolt://neo4j:${NEO4J_PORT:-7687}
|
|
- NEO4J_USER=${NEO4J_USER}
|
|
- NEO4J_PASSWORD=${NEO4J_PASSWORD}
|
|
- PORT=8000
|
|
neo4j:
|
|
image: neo4j:5.26.2
|
|
healthcheck:
|
|
test:
|
|
[
|
|
"CMD-SHELL",
|
|
"wget -qO- http://localhost:${NEO4J_PORT:-7474} || exit 1",
|
|
]
|
|
interval: 1s
|
|
timeout: 10s
|
|
retries: 10
|
|
start_period: 3s
|
|
ports:
|
|
- "7474:7474" # HTTP
|
|
- "${NEO4J_PORT:-7687}:${NEO4J_PORT:-7687}" # Bolt
|
|
volumes:
|
|
- neo4j_data:/data
|
|
environment:
|
|
- NEO4J_AUTH=${NEO4J_USER}/${NEO4J_PASSWORD}
|
|
|
|
volumes:
|
|
neo4j_data:
|