-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcompose.yml
80 lines (75 loc) · 2.81 KB
/
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
services:
web-client:
container_name: powertac-web-client
image: "ghcr.io/powertac/web-client:${EM_WEB_CLIENT_VERSION}"
volumes:
- "./assets/services.json:/usr/share/nginx/html/services.json"
ports:
- "${EM_HOST}:${EM_WEB_CLIENT_HOST_PORT}:80"
orchestrator:
container_name: powertac-orchestrator
depends_on:
orchestrator-db:
condition: service_healthy
image: "ghcr.io/powertac/orchestrator:${EM_ORCHESTRATOR_VERSION}"
volumes:
- "${EM_ROOT_PATH}:/var/opt/powertac"
- "./assets/orchestrator.properties:/opt/powertac/orchestrator/application.properties"
- "/var/run/docker.sock:/var/run/docker.sock"
ports:
- "${EM_HOST}:${EM_ORCHESTRATOR_HOST_PORT}:80"
environment:
EM_ROOT_PATH: "${EM_ROOT_PATH}"
MYSQL_PASSWORD: "${EM_ORCHESTRATOR_DB_PASSWORD}"
EM_ADMIN_PASSWORD: "${EM_ADMIN_PASSWORD}"
EM_SERVER_VERSION: "${EM_SERVER_VERSION}"
EM_LOGPROCESSOR_VERSION: "${EM_LOGPROCESSOR_VERSION}"
EM_ANALYSIS_VERSION: "${EM_ANALYSIS_VERSION}"
EM_HOST_IP: "${EM_HOST}"
weather-server:
container_name: powertac-weather-server
hostname: weather-server
depends_on:
weather-db:
condition: service_healthy
image: "ghcr.io/powertac/weather-server:${EM_WEATHER_SERVER_VERSION}"
volumes:
- "./assets/weather-server.properties:/opt/powertac/weather-server/application.properties"
- "./assets/weather-data.sql:/var/opt/powertac/weather.sql"
ports:
- "${EM_HOST}:${EM_WEATHER_SERVER_HOST_PORT}:80"
environment:
MYSQL_PASSWORD: "${EM_WEATHER_DB_PASSWORD}"
orchestrator-db:
container_name: powertac-orchestrator-db
image: "mariadb:latest"
volumes:
- "${EM_ROOT_PATH}/persistence/orchestrator:/var/lib/mysql"
environment:
MYSQL_DATABASE: powertac_orchestrator
MYSQL_USER: powertac_orchestrator
MYSQL_PASSWORD: "${EM_ORCHESTRATOR_DB_PASSWORD}"
MYSQL_ROOT_PASSWORD: "${EM_ORCHESTRATOR_DB_PASSWORD}"
healthcheck:
test: "/usr/bin/mariadb -upowertac_orchestrator -p${EM_ORCHESTRATOR_DB_PASSWORD} --execute \"USE powertac_orchestrator;\""
start_period: 30s
interval: 1s
timeout: 1s
retries: 180
weather-db:
container_name: powertac-weather-db
image: "mariadb:latest"
volumes:
- "${EM_ROOT_PATH}/persistence/weather-server:/var/lib/mysql"
command: ["--max_allowed_packet=100000000"]
environment:
MYSQL_DATABASE: powertac_weather
MYSQL_USER: powertac_weather
MYSQL_PASSWORD: "${EM_WEATHER_DB_PASSWORD}"
MYSQL_ROOT_PASSWORD: "${EM_ORCHESTRATOR_DB_PASSWORD}"
healthcheck:
test: "/usr/bin/mariadb -upowertac_weather -p${EM_WEATHER_DB_PASSWORD} --execute \"USE powertac_weather;\""
start_period: 30s
interval: 1s
timeout: 1s
retries: 180