-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
129 lines (123 loc) · 3.34 KB
/
Copy pathdocker-compose.yml
File metadata and controls
129 lines (123 loc) · 3.34 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:
py-recipe-service:
build: ./services/py-recipe-service
ports:
- "8090:8080"
extra_hosts:
- "host.docker.internal:host-gateway"
env_file:
- ./.env
develop:
watch:
- action: sync+restart
path: ./services/py-recipe-service
target: /app
ignore:
- __pycache__/
- "*.pyc"
- action: rebuild
path: ./services/py-recipe-service/requirements.txt
- action: rebuild
path: ./.env
py-help-service:
build: ./services/py-help-service
ports:
- "8091:8080"
extra_hosts:
- "host.docker.internal:host-gateway"
env_file:
- ./.env
develop:
watch:
- action: sync+restart
path: ./services/py-help-service
target: /app
ignore:
- __pycache__/
- "*.pyc"
- action: rebuild
path: ./services/py-help-service/requirements.txt
- action: rebuild
path: ./.env
postgres:
image: postgres:16-alpine
restart: always
environment:
POSTGRES_USER: ${DB_USER:-postgres}
POSTGRES_PASSWORD: ${DB_PASSWORD:-secretpass}
POSTGRES_DB: ${DB_NAME:-cookingdb}
expose:
- "5432"
volumes:
- db-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${DB_USER:-postgres} -d ${DB_NAME:-cookingdb}"]
interval: 5s
timeout: 5s
retries: 5
spring-api:
build: ./services/spring-api
ports:
- "8081:8080"
environment:
AI_RECIPE_SERVICE_URL: http://py-recipe-service:8080
AI_HELP_SERVICE_URL: http://py-help-service:8080
DB_URL: jdbc:postgresql://postgres:5432/${DB_NAME:-cookingdb}
DB_USER: ${DB_USER:-postgres}
DB_PASSWORD: ${DB_PASSWORD:-secretpass}
JPA_DDL_AUTO: update
env_file:
- ./.env
depends_on:
postgres:
condition: service_healthy
py-help-service:
condition: service_started
py-recipe-service:
condition: service_started
develop:
watch:
- action: rebuild
path: ./services/spring-api/src
- action: rebuild
path: ./services/spring-api/build.gradle.kts
- action: rebuild
path: ./.env
web-client:
build:
context: ./web-client
target: dev
ports:
- "8080:8080"
environment:
VITE_API_PROXY: http://spring-api:8080
depends_on:
- spring-api
develop:
watch:
- action: sync
path: ./web-client/src
target: /app/src
- action: sync
path: ./web-client/index.html
target: /app/index.html
- action: sync+restart
path: ./web-client/vite.config.ts
target: /app/vite.config.ts
- action: rebuild
path: ./web-client/package.json
swagger-ui:
image: swaggerapi/swagger-ui:v5.18.2
container_name: team-devsecops-swagger-ui
ports:
- "8083:8080"
environment:
URLS: "[
{ url: '/openapi/openapi.yaml', name: 'Public Gateway API' },
{ url: '/openapi/openapi-internal.yaml', name: 'Internal GenAI Microservices' }
]"
volumes:
- ./api/openapi.yaml:/usr/share/nginx/html/openapi/openapi.yaml:ro
- ./api/openapi-internal.yaml:/usr/share/nginx/html/openapi/openapi-internal.yaml:ro
volumes:
db-data: