Skip to content

Commit 4264961

Browse files
committed
Add Docker Compose and Dockerfiles for solver-bot, solver-common, and solver-db services
1 parent 75983bf commit 4264961

File tree

3 files changed

+91
-0
lines changed

3 files changed

+91
-0
lines changed

docker-compose.yml

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
services:
2+
solver-bot:
3+
build:
4+
context: .
5+
dockerfile: solver-bot/Dockerfile
6+
container_name: diffy-bot-client-container
7+
working_dir: /solver-client
8+
env_file:
9+
- .env
10+
environment:
11+
- CLIENT_API_KEY=${CLIENT_API_KEY}
12+
- CLIENT_API_URL=http://solver-common:8080/api/solver
13+
ports:
14+
- "8001:8000"
15+
volumes:
16+
- ./solver-bot/src:/solver-client/src
17+
depends_on:
18+
- solver-db
19+
- solver-common
20+
networks:
21+
- solver-network
22+
23+
solver-common:
24+
build:
25+
context: .
26+
dockerfile: solver-common/Dockerfile
27+
container_name: diffy-bot-server-container
28+
working_dir: /solver-server
29+
env_file:
30+
- .env
31+
environment:
32+
- DB_CONNECTION=${DB_CONNECTION}
33+
- DB_HOST=diffy-bot-db-container
34+
- DB_PORT=${DB_PORT}
35+
- DB_DATABASE=${DB_DATABASE}
36+
- DB_USERNAME=${DB_USERNAME}
37+
- DB_PASSWORD=${DB_PASSWORD}
38+
ports:
39+
- "8081:8080"
40+
volumes:
41+
- ./solver-common/src:/solver-server/src
42+
depends_on:
43+
- solver-db
44+
networks:
45+
- solver-network
46+
47+
solver-db:
48+
image: postgres:17.5
49+
container_name: diffy-bot-db-container
50+
environment:
51+
POSTGRES_USER: ${DB_USERNAME}
52+
POSTGRES_PASSWORD: ${DB_PASSWORD}
53+
POSTGRES_DB: ${DB_DATABASE}
54+
ports:
55+
- "5433:5432"
56+
volumes:
57+
- pgdata:/var/lib/postgresql/data
58+
- ./database/schema.sql:/docker-entrypoint-initdb.d/init.sql
59+
networks:
60+
- solver-network
61+
62+
volumes:
63+
pgdata:
64+
65+
networks:
66+
solver-network:
67+
driver: bridge

solver-bot/Dockerfile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
FROM python:3.13.3-slim
2+
3+
WORKDIR /solver-client
4+
5+
COPY solver-bot /solver-client
6+
COPY .env .env
7+
8+
RUN pip install --no-cache-dir -r requirements.txt
9+
10+
CMD ["python", "src/main/python/main.py"]

solver-common/Dockerfile

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
FROM openjdk:21-jdk-slim
2+
3+
WORKDIR /solver-server
4+
5+
RUN apt-get update && apt-get install -y maven
6+
7+
COPY solver-common /solver-server
8+
COPY .env .env
9+
10+
RUN mvn dependency:go-offline
11+
12+
RUN mvn clean install
13+
14+
CMD ["java", "-jar", "target/solver-0.1.jar"]

0 commit comments

Comments
 (0)