Repository navigation
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
129 lines (125 loc) · 4.03 KB
/
Copy pathdocker-compose.yml
File metadata and controls
129 lines (125 loc) · 4.03 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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
services:
postgres:
image: postgres:16-alpine
container_name: talos-postgres
environment:
POSTGRES_DB: talos
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
ports:
- "5432:5432"
volumes:
- postgres-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d talos"]
interval: 5s
timeout: 5s
retries: 10
start_period: 5s
logging:
driver: json-file
options:
max-size: "10m"
mock-stellar:
image: node:20-alpine
container_name: talos-mock-stellar
working_dir: /app
command: ["node", "/app/scripts/mock-stellar-server.mjs"]
ports:
- "4010:4010"
volumes:
- .:/app
environment:
PORT: 4010
FAULT_INJECTION_ENABLED: ${FAULT_INJECTION_ENABLED:-false}
FAULT_LATENCY_MS: ${FAULT_LATENCY_MS:-0}
FAULT_ERROR_RATE: ${FAULT_ERROR_RATE:-0}
FAULT_TIMEOUT_RATE: ${FAULT_TIMEOUT_RATE:-0}
FAULT_MALFORMED_RATE: ${FAULT_MALFORMED_RATE:-0}
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:4010/health >/dev/null 2>&1 || exit 1"]
interval: 5s
timeout: 3s
retries: 10
start_period: 3s
logging:
driver: json-file
options:
max-size: "10m"
web:
image: node:20-bookworm
container_name: talos-web
working_dir: /workspace
command: >
sh -c "corepack enable && corepack prepare pnpm@9 --activate && pnpm install --frozen-lockfile && pnpm --dir web db:migrate && pnpm --dir web db:seed && pnpm --dir web dev"
ports:
- "3000:3000"
volumes:
- .:/workspace
environment:
NODE_ENV: development
NEXT_TELEMETRY_DISABLED: "1"
PORT: 3000
DATABASE_URL: postgresql://postgres:postgres@postgres:5432/talos
DIRECT_URL: postgresql://postgres:postgres@postgres:5432/talos
STELLAR_NETWORK: testnet
STELLAR_HORIZON_URL: http://mock-stellar:4010
STELLAR_RPC_URL: http://mock-stellar:4010
NEXT_PUBLIC_STELLAR_NETWORK: testnet
NEXT_PUBLIC_STELLAR_RPC_URL: http://mock-stellar:4010
NEXT_PUBLIC_STELLAR_WALLET_NETWORK: testnet
NEXT_PUBLIC_STELLAR_OPERATOR_PUBLIC_KEY: GCEFRNTKTNYOS7QFQ7USU57N3NZZA65FXAVGA2WKFYJGKQZSM5WNAKRL
STELLAR_OPERATOR_PUBLIC_KEY: GCEFRNTKTNYOS7QFQ7USU57N3NZZA65FXAVGA2WKFYJGKQZSM5WNAKRL
NEXT_PUBLIC_TALOS_REGISTRY_CONTRACT: CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
NEXT_PUBLIC_TALOS_NAME_SERVICE_CONTRACT: CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
NEXT_PUBLIC_TALOS_CREATION_XLM: "20"
X402_FACILITATOR_URL: http://mock-stellar:4010
X402_API_KEY: local-dev
X402_SETTLEMENT_NETWORK: stellar-testnet
CROSS_CHAIN_WEBHOOK_SECRET: local-stack-secret
OPENAI_API_KEY: dummy
TAVILY_API_KEY: dummy
depends_on:
postgres:
condition: service_healthy
mock-stellar:
condition: service_healthy
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:3000/api/health/live >/dev/null 2>&1 || exit 1"]
interval: 10s
timeout: 5s
retries: 15
start_period: 25s
logging:
driver: json-file
options:
max-size: "10m"
prime-agent:
build:
context: ./packages/prime-agent
dockerfile: Dockerfile
container_name: talos-prime-agent
profiles: ["agent"]
environment:
PYTHONUNBUFFERED: "1"
BROWSER_HEADLESS: "true"
STAGEHAND_HEADLESS: "true"
DATABASE_URL: postgresql://postgres:postgres@postgres:5432/talos
STELLAR_NETWORK: testnet
STELLAR_HORIZON_URL: http://mock-stellar:4010
STELLAR_RPC_URL: http://mock-stellar:4010
OPENAI_API_KEY: dummy
TAVILY_API_KEY: dummy
TALOS_MASTER_KEY: local-dev
depends_on:
postgres:
condition: service_healthy
mock-stellar:
condition: service_healthy
command: ["sh", "-c", "uv run talos-agent start || tail -f /dev/null"]
logging:
driver: json-file
options:
max-size: "10m"
volumes:
postgres-data: