Skip to content

Commit a879998

Browse files
committed
Add One Dev Docker Compose
1 parent a48e34f commit a879998

File tree

7 files changed

+159
-263
lines changed

7 files changed

+159
-263
lines changed

.github/workflows/build-images.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Build StudyMate Images
1+
name: Build StudyMate Images # TODO: remove file?
22

33
on:
44
push:

docker-compose.dev-no-traefik.yml

Lines changed: 0 additions & 135 deletions
This file was deleted.

docker-compose.dev.yml

Lines changed: 153 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,153 @@
1+
services:
2+
client:
3+
build:
4+
context: ./client
5+
dockerfile: Dockerfile
6+
ports:
7+
- "3000:80"
8+
depends_on:
9+
- auth-service
10+
networks:
11+
- dev-network
12+
13+
auth-service:
14+
build:
15+
context: ./server/auth-service
16+
dockerfile: Dockerfile
17+
ports:
18+
- "8083:8083"
19+
restart: unless-stopped
20+
environment:
21+
- SPRING_DATASOURCE_URL=jdbc:postgresql://postgres:5432/auth_db
22+
- SPRING_DATASOURCE_USERNAME=postgres
23+
- SPRING_DATASOURCE_PASSWORD=postgres
24+
depends_on:
25+
- postgres
26+
networks:
27+
- dev-network
28+
29+
document-service:
30+
build:
31+
context: ./server/document-service
32+
dockerfile: Dockerfile
33+
ports:
34+
- "8084:8084"
35+
restart: unless-stopped
36+
environment:
37+
- SPRING_DATASOURCE_URL=jdbc:postgresql://postgres:5432/document_db
38+
- SPRING_DATASOURCE_USERNAME=postgres
39+
- SPRING_DATASOURCE_PASSWORD=postgres
40+
depends_on:
41+
- postgres
42+
networks:
43+
- dev-network
44+
45+
genai-service:
46+
build:
47+
context: ./server/genai-service
48+
dockerfile: Dockerfile
49+
ports:
50+
- "8085:8085"
51+
restart: unless-stopped
52+
environment:
53+
- GENAI_BACKEND_URL=http://genai:8081
54+
- DOCUMENT_SERVICE_URL=http://document-service:8084
55+
depends_on:
56+
- genai
57+
networks:
58+
- dev-network
59+
60+
genai:
61+
build:
62+
context: ./genai
63+
dockerfile: Dockerfile
64+
ports:
65+
- "8081:8081"
66+
restart: unless-stopped
67+
environment:
68+
- WEAVIATE_HOST=weaviate
69+
- WEAVIATE_PORT=8090
70+
- OPEN_WEBUI_API_KEY_CHAT=dummy-key-chat
71+
- OPEN_WEBUI_API_KEY_GEN=dummy-key-gen
72+
- LANGSMITH_TRACING=true
73+
- LANGSMITH_ENDPOINT=https://api.smith.langchain.com
74+
- LANGSMITH_API_KEY=dummy-langsmith-key
75+
- LANGSMITH_PROJECT=studymate
76+
depends_on:
77+
- weaviate
78+
networks:
79+
- dev-network
80+
81+
postgres:
82+
image: postgres:15
83+
ports:
84+
- "5432:5432"
85+
restart: unless-stopped
86+
environment:
87+
POSTGRES_USER: postgres
88+
POSTGRES_PASSWORD: postgres
89+
POSTGRES_DB: postgres
90+
POSTGRES_MULTIPLE_DATABASES: auth_db,document_db
91+
volumes:
92+
- pgdata:/var/lib/postgresql/data
93+
- ./database_setup_microservices.sql:/docker-entrypoint-initdb.d/database_setup_microservices.sql
94+
networks:
95+
- dev-network
96+
97+
weaviate:
98+
command:
99+
- --host
100+
- 0.0.0.0
101+
- --port
102+
- '8090'
103+
- --scheme
104+
- http
105+
image: cr.weaviate.io/semitechnologies/weaviate:1.30.3
106+
ports:
107+
- "8090:8090"
108+
- "50051:50051"
109+
restart: unless-stopped
110+
volumes:
111+
- weaviate_data:/var/lib/weaviate
112+
environment:
113+
QUERY_DEFAULTS_LIMIT: 25
114+
AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED: 'true'
115+
PERSISTENCE_DATA_PATH: '/var/lib/weaviate'
116+
ENABLE_API_BASED_MODULES: 'true'
117+
CLUSTER_HOSTNAME: 'node1'
118+
networks:
119+
- dev-network
120+
121+
prometheus:
122+
image: prom/prometheus
123+
ports:
124+
- "9090:9090"
125+
restart: unless-stopped
126+
volumes:
127+
- ./monitoring/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
128+
networks:
129+
- dev-network
130+
131+
grafana:
132+
image: grafana/grafana
133+
ports:
134+
- "3001:3000"
135+
restart: unless-stopped
136+
volumes:
137+
- grafana_data:/var/lib/grafana
138+
- ./monitoring/grafana/provisioning:/etc/grafana/provisioning
139+
environment:
140+
- GF_SECURITY_ADMIN_USER=admin
141+
- GF_SECURITY_ADMIN_PASSWORD=admin
142+
depends_on:
143+
- prometheus
144+
networks:
145+
- dev-network
146+
147+
volumes:
148+
pgdata:
149+
weaviate_data:
150+
grafana_data:
151+
152+
networks:
153+
dev-network:

0 commit comments

Comments
 (0)