-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcompose.yml
More file actions
103 lines (97 loc) · 2.75 KB
/
Copy pathcompose.yml
File metadata and controls
103 lines (97 loc) · 2.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
services:
database:
profiles: [ all, backend, database ]
build:
context: database
args:
REGISTRY_PREFIX: "${REGISTRY_PREFIX:-}"
APK_MIRROR: "${APK_MIRROR:-}"
image: squidfall/database:latest
container_name: squidfall-database
ports:
- "5432:5432"
volumes:
- squidfall_database:/var/lib/postgresql/data
env_file:
- database/.env
# TCP check (-h forces it): during first-boot init the temp server is
# socket-only, so this only passes once the real server is accepting.
healthcheck:
test: ["CMD-SHELL", "pg_isready -h 127.0.0.1 -p 5432 -U postgres -d squidfall"]
interval: 3s
timeout: 5s
retries: 30
start_period: 5s
backend:
profiles: [ all, backend ]
build:
context: backend
args:
REGISTRY_PREFIX: "${REGISTRY_PREFIX:-}"
PIP_INDEX_URL: "${PIP_INDEX_URL:-}"
PIP_TRUSTED_HOST: "${PIP_TRUSTED_HOST:-}"
image: squidfall/backend:latest
container_name: squidfall-backend
depends_on:
database:
condition: service_healthy
ports:
- "8000:8000"
env_file:
- backend/.env
tools:
profiles: [ all, inference, tools ]
build:
context: tools
args:
REGISTRY_PREFIX: "${REGISTRY_PREFIX:-}"
PIP_INDEX_URL: "${PIP_INDEX_URL:-}"
PIP_TRUSTED_HOST: "${PIP_TRUSTED_HOST:-}"
image: squidfall/tools:latest
container_name: squidfall-tools
ports:
- "8002:8002"
# gitignored (holds the geocoding key) — optional so a fresh clone / CI
# build doesn't fail; providers default the key to "" when unset.
env_file:
- path: tools/.env
required: false
inference:
profiles: [ all, inference ]
build:
context: inference
args:
REGISTRY_PREFIX: "${REGISTRY_PREFIX:-}"
PIP_INDEX_URL: "${PIP_INDEX_URL:-}"
PIP_TRUSTED_HOST: "${PIP_TRUSTED_HOST:-}"
image: squidfall/inference:latest
container_name: squidfall-inference
depends_on:
- tools
ports:
- "8001:8001"
# Lets the container reach Ollama on the host (Docker Desktop auto; explicit
# mapping keeps it portable to Linux).
extra_hosts:
- "host.docker.internal:host-gateway"
env_file:
- inference/.env
frontend:
profiles: [ all, frontend ]
build:
context: frontend
args:
LANGGRAPH_DEPLOYMENT_URL: "http://squidfall-inference:8001/api/v1"
REGISTRY_PREFIX: "${REGISTRY_PREFIX:-}"
NPM_REGISTRY: "${NPM_REGISTRY:-}"
APK_MIRROR: "${APK_MIRROR:-}"
image: squidfall/frontend:latest
container_name: squidfall-frontend
depends_on:
- inference
ports:
- "80:3000"
env_file:
- frontend/.env
volumes:
squidfall_database: