-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
144 lines (142 loc) · 4.73 KB
/
docker-compose.yml
File metadata and controls
144 lines (142 loc) · 4.73 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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
networks:
topo-net:
name: topo-net
external: true
services:
oscars-backend:
container_name: oscars-nostack-backend
hostname: oscars-backend
networks:
- topo-net
build:
context: ./
args:
HOSTNAME: ${HOSTNAME:-oscars-backend.ocd-stack.orb.local}
JAVA_OPTS: "-XX:UseSVE=0"
MAVEN_OPTS: "-XX:UseSVE=0"
dockerfile: ./deploy/devel/backend.dockerfile
depends_on:
oscars-db:
condition: service_healthy
ports:
- "${OSCARS_BACKEND_WEB_PORT:-8201}:${OSCARS_BACKEND_WEB_PORT:-8201}"
- "9201:9201" # Debugger port
- "1099:1099" # profiler port
- "8200:8200"
environment:
HOSTNAME: ${HOSTNAME:-oscars-backend.ocd-stack.orb.local}
JAVA_OPTS: >
-XX:UseSVE=0
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:9201
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=1099
-Dcom.sun.management.jmxremote.rmi.port=1099
-Djava.rmi.server.hostname="${HOSTNAME}"
-Dcom.sun.management.jmxremote.local.only=false
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
MAVEN_OPTS: ${MAVEN_OPTS}:--XX:UseSVE=0
OSCARS_BACKEND_WEB_PORT: ${OSCARS_BACKEND_WEB_PORT:-8201}
SPRING_DATASOURCE_URL: jdbc:postgresql://oscars-db:5432/${POSTGRES_DB:-oscars}
POSTGRES_USER: ${POSTGRES_USER:-oscars}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD-secret}
ESDB_API_KEY: ${ESDB_API_KEY}
ESDB_URI: ${ESDB_URI}
ESDB_GRAPHQL_URI: ${ESDB_GRAPHQL_URI:-http://esdb:8000/esdb_api/graphql}
TOPO_OSCARS_URL: ${TOPO_OSCARS_URL:-http://topo-oscars:8004/oscars-one/topology}
NSO_USERNAME: ${NSO_USERNAME}
NSO_PASSWORD: ${NSO_PASSWORD}
NSO_URI: ${NSO_URI}
healthcheck:
test: nc -z localhost ${OSCARS_BACKEND_WEB_PORT:-8201} || exit -1
start_period: 15s
interval: 5s
timeout: 10s
retries: 10
oscars-backend-test:
build:
context: ./
dockerfile: ./deploy/devel/backend.dockerfile
args:
JAVA_OPTS: "-Xms512m -Xmx1024m -XX:UseSVE=0"
MAVEN_OPTS: "-Xms512m -Xmx1024m -XX:UseSVE=0"
target: test
environment:
JAVA_OPTS: "-XX:UseSVE=0"
MAVEN_OPTS: "-XX:UseSVE=0"
OSCARS_BACKEND_WEB_PORT: ${OSCARS_BACKEND_WEB_PORT:-8201}
SPRING_DATASOURCE_URL: jdbc:postgresql://oscars-db:5432/${POSTGRES_DB:-oscars}
POSTGRES_USER: ${POSTGRES_USER:-oscars}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD-secret}
ESDB_API_KEY: ${ESDB_API_KEY}
ESDB_URI: ${ESDB_URI}
TOPO_OSCARS_URL: ${TOPO_OSCARS_URL:-http://topo-oscars:8004/oscars-one/topology}
NSO_USERNAME: ${NSO_USERNAME}
NSO_PASSWORD: ${NSO_PASSWORD}
NSO_URI: ${NSO_URI}
depends_on:
- oscars-backend
oscars-backend-profile:
container_name: oscars-backend-profile
depends_on:
oscars-backend:
condition: service_healthy
build:
context: ./
dockerfile: ./deploy/devel/profile.dockerfile
environment:
DELAY_MIN: "1m"
DURATION_MIN: "1m"
TARGET_HOST: "oscars-backend:1099"
links:
- "oscars-backend:1099"
oscars-load-test:
depends_on:
oscars-backend:
condition: service_healthy
build:
context: ./
dockerfile: ./deploy/devel/load-test.dockerfile
environment:
TARGET_HOST: oscars-backend:1099
FILENAME: load-testing-results.csv
WEB_REPORT_DIR: load-testing-web
links:
- "oscars-backend:1099"
oscars-db:
image: "wharf.es.net/dockerhub-proxy/library/postgres:14.1-alpine"
container_name: oscars-nostack-db
networks:
- topo-net
environment:
POSTGRES_DB: ${POSTGRES_DB:-oscars}
POSTGRES_USER: ${POSTGRES_USER:-oscars}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD-secret}
healthcheck:
test: ["CMD-SHELL", "pg_isready -d ${POSTGRES_DB:-oscars} -U ${POSTGRES_USER:-oscars}"]
interval: 5s
timeout: 5s
retries: 5
oscars-frontend:
container_name: oscars-nostack-frontend
build:
context: frontend
# use deploy/prod/frontend.dockerfile for production image
dockerfile: ${OSCARS_FRONTEND_DOCKERFILE:-../deploy/devel/frontend.dockerfile}
# mounted as volumes for dev mode hot reload
volumes:
- ./frontend/src:/app/src
- ./frontend/public:/app/public
environment:
# OSCARS_BACKEND_URL only used by production image
OSCARS_BACKEND_URL: ${OSCARS_BACKEND_URL:-http://oscars-backend:8201}
ports:
- "${OSCARS_FRONTEND_WEB_PORT:-8181}:3000"
- "9191:9191" # Debugger port
networks:
- topo-net
depends_on:
oscars-backend:
condition: service_healthy
links:
- oscars-backend:8201