-
Notifications
You must be signed in to change notification settings - Fork 39
/
docker-compose.yml
112 lines (102 loc) · 3.13 KB
/
docker-compose.yml
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
name: julep-agents-api
# Shared environment variables
x--shared-environment: &shared-environment
AGENTS_API_KEY: ${AGENTS_API_KEY}
AGENTS_API_KEY_HEADER_NAME: ${AGENTS_API_KEY_HEADER_NAME:-Authorization}
AGENTS_API_HOSTNAME: ${AGENTS_API_HOSTNAME:-localhost}
AGENTS_API_PUBLIC_PORT: ${AGENTS_API_PUBLIC_PORT:-80}
AGENTS_API_PROTOCOL: ${AGENTS_API_PROTOCOL:-http}
AGENTS_API_URL: ${AGENTS_API_URL:-http://agents-api:8080}
COZO_AUTH_TOKEN: ${COZO_AUTH_TOKEN}
COZO_HOST: ${COZO_HOST:-http://memory-store:9070}
DEBUG: ${AGENTS_API_DEBUG:-False}
EMBEDDING_MODEL_ID: ${EMBEDDING_MODEL_ID:-Alibaba-NLP/gte-large-en-v1.5}
EMBEDDING_SERVICE_BASE: ${EMBEDDING_SERVICE_BASE:-http://text-embeddings-inference}
LITELLM_MASTER_KEY: ${LITELLM_MASTER_KEY}
LITELLM_URL: ${LITELLM_URL:-http://litellm:4000}
SUMMARIZATION_MODEL_NAME: ${SUMMARIZATION_MODEL_NAME:-gpt-4-turbo}
TEMPORAL_ENDPOINT: ${TEMPORAL_ENDPOINT:-temporal:7233}
TEMPORAL_NAMESPACE: ${TEMPORAL_NAMESPACE:-default}
TEMPORAL_TASK_QUEUE: ${TEMPORAL_TASK_QUEUE:-julep-task-queue}
TEMPORAL_WORKER_URL: ${TEMPORAL_WORKER_URL:-temporal:7233}
TRUNCATE_EMBED_TEXT: ${TRUNCATE_EMBED_TEXT:-True}
WORKER_URL: ${WORKER_URL:-temporal:7233}
x--base-agents-api: &base-agents-api
image: julepai/agents-api:${TAG}
depends_on:
memory-store:
condition: service_started
worker:
condition: service_started
environment:
<<: *shared-environment
build:
context: .
dockerfile: Dockerfile
ports:
- "8080:8080"
develop:
watch:
- action: sync+restart
path: ./agents_api
target: /app/agents_api
ignore:
- ./**/*.pyc
- action: rebuild
path: poetry.lock
- action: rebuild
path: Dockerfile
services:
agents-api:
<<: *base-agents-api
profiles:
- '' # Acts as a default profile. See: https://stackoverflow.com/questions/75758174/how-to-make-profile-default-for-docker-compose
- single-tenant
agents-api-multi-tenant:
<<: *base-agents-api
profiles:
- multi-tenant
environment:
<<: *shared-environment
AGENTS_API_MULTI_TENANT_MODE: true
AGENTS_API_PREFIX: "/api"
worker:
image: julepai/worker:${TAG}
environment:
<<: *shared-environment
build:
context: .
dockerfile: Dockerfile.worker
depends_on:
temporal:
condition: service_started
develop:
watch:
- action: sync+restart
path: ./agents_api
target: /app/agents_api
ignore:
- ./**/*.pyc
- action: rebuild
path: poetry.lock
- action: rebuild
path: Dockerfile.worker
cozo-migrate:
image: julepai/cozo-migrate:${TAG}
container_name: cozo-migrate
depends_on:
memory-store:
condition: service_started
build:
context: .
dockerfile: Dockerfile.migration
restart: "no" # Make sure to double quote this
environment:
<<: *shared-environment
develop:
watch:
- action: sync+restart
path: ./migrations
target: /app/migrations
- action: rebuild
path: Dockerfile.migration