| calvinosanch | fc94811 | 2019-07-26 10:46:00 +0000 | [diff] [blame] | 1 | ## |
| 2 | # Copyright 2019 ETSI | ||||
| 3 | # | ||||
| 4 | # Licensed under the Apache License, Version 2.0 (the "License"); you may | ||||
| 5 | # not use this file except in compliance with the License. You may obtain | ||||
| 6 | # a copy of the License at | ||||
| 7 | # | ||||
| 8 | # http://www.apache.org/licenses/LICENSE-2.0 | ||||
| 9 | # | ||||
| 10 | # Unless required by applicable law or agreed to in writing, software | ||||
| 11 | # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | ||||
| 12 | # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | ||||
| 13 | # License for the specific language governing permissions and limitations | ||||
| 14 | # under the License. | ||||
| 15 | ## | ||||
| 16 | |||||
| 17 | ######################################################################## | ||||
| 18 | |||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 19 | version: '3' |
| 20 | volumes: | ||||
| garciadeblas | e3697a1 | 2018-12-10 15:49:27 +0100 | [diff] [blame] | 21 | ro: |
| gcalvino | 796aafb | 2018-05-10 13:29:17 +0200 | [diff] [blame] | 22 | ro_db: |
| 23 | mongo_db: | ||||
| 24 | mon_db: | ||||
| lavado | 0ef7a6d | 2018-10-19 16:59:12 -0500 | [diff] [blame] | 25 | pol_db: |
| gcalvino | 796aafb | 2018-05-10 13:29:17 +0200 | [diff] [blame] | 26 | osm_packages: |
| lavado | 353c8dd | 2018-11-08 08:22:07 -0500 | [diff] [blame] | 27 | prom_db: |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 28 | networks: |
| 29 | netOSM: | ||||
| Mike Marchetti | b842085 | 2018-09-13 13:45:06 -0400 | [diff] [blame] | 30 | external: |
| Mike Marchetti | 6e96263 | 2018-09-26 16:26:14 -0400 | [diff] [blame] | 31 | name: ${OSM_NETWORK:-netosm} |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 32 | #driver: overlay |
| 33 | #driver_opts: | ||||
| 34 | # com.docker.network.driver.mtu: "1446" | ||||
| 35 | services: | ||||
| 36 | zookeeper: | ||||
| Mike Marchetti | 13d76c8 | 2018-09-19 15:00:36 -0400 | [diff] [blame] | 37 | image: wurstmeister/zookeeper:${ZOOKEEPER_TAG:-latest} |
| garciadeblas | 46e9959 | 2018-04-16 13:32:02 +0200 | [diff] [blame] | 38 | # ports: |
| 39 | # - "2181:2181" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 40 | networks: |
| 41 | - netOSM | ||||
| Mike Marchetti | 851aac2 | 2018-09-20 10:18:01 -0400 | [diff] [blame] | 42 | healthcheck: |
| 43 | test: echo stat | nc localhost 2181 | ||||
| 44 | interval: 10s | ||||
| 45 | timeout: 10s | ||||
| 46 | retries: 3 | ||||
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 47 | logging: |
| 48 | driver: "json-file" | ||||
| 49 | options: | ||||
| 50 | max-size: "100m" | ||||
| 51 | max-file: "2" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 52 | kafka: |
| Mike Marchetti | 13d76c8 | 2018-09-19 15:00:36 -0400 | [diff] [blame] | 53 | image: wurstmeister/kafka:${KAFKA_TAG:-latest} |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 54 | ports: |
| Mike Marchetti | b842085 | 2018-09-13 13:45:06 -0400 | [diff] [blame] | 55 | - "9092" |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 56 | networks: |
| 57 | - netOSM | ||||
| 58 | environment: | ||||
| 59 | KAFKA_ADVERTISED_HOST_NAME: kafka | ||||
| 60 | KAFKA_ADVERTISED_PORT: 9092 | ||||
| 61 | KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 | ||||
| Benjamin Diaz | c577862 | 2019-02-27 16:42:34 -0300 | [diff] [blame] | 62 | KAFKA_LOG_RETENTION_HOURS: 24 |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 63 | volumes: |
| 64 | - /var/run/docker.sock:/var/run/docker.sock | ||||
| calvinosanch | fc94811 | 2019-07-26 10:46:00 +0000 | [diff] [blame] | 65 | healthcheck: |
| 66 | test: zookeeper-shell.sh zookeeper:2181 ls /brokers/ids 2>&1 | grep "Node does not exist" && exit 1 || exit 0 | ||||
| 67 | interval: 20s | ||||
| 68 | timeout: 10s | ||||
| 69 | retries: 5 | ||||
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 70 | logging: |
| 71 | driver: "json-file" | ||||
| 72 | options: | ||||
| 73 | max-size: "100m" | ||||
| 74 | max-file: "2" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 75 | #depends_on: |
| 76 | # - zookeeper | ||||
| 77 | mongo: | ||||
| 78 | image: mongo | ||||
| garciadeblas | 46e9959 | 2018-04-16 13:32:02 +0200 | [diff] [blame] | 79 | # ports: |
| 80 | # - "27017:27017" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 81 | networks: |
| 82 | - netOSM | ||||
| gcalvino | 796aafb | 2018-05-10 13:29:17 +0200 | [diff] [blame] | 83 | volumes: |
| 84 | - mongo_db:/data/db | ||||
| lavado | 6021624 | 2018-10-10 23:44:28 +0200 | [diff] [blame] | 85 | prometheus: |
| 86 | image: prom/prometheus:${PROMETHEUS_TAG:-latest} | ||||
| 87 | hostname: prometheus | ||||
| 88 | ports: | ||||
| 89 | - "${OSM_PROM_PORTS:-9091:9090}" | ||||
| 90 | volumes: | ||||
| 91 | - ./prometheus.yml:/etc/prometheus/prometheus.yml:ro | ||||
| lavado | 353c8dd | 2018-11-08 08:22:07 -0500 | [diff] [blame] | 92 | - prom_db:/prometheus |
| lavado | 6021624 | 2018-10-10 23:44:28 +0200 | [diff] [blame] | 93 | networks: |
| 94 | - netOSM | ||||
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 95 | logging: |
| 96 | driver: "json-file" | ||||
| 97 | options: | ||||
| 98 | max-size: "100m" | ||||
| 99 | max-file: "2" | ||||
| lavado | 6ad812e | 2019-11-29 10:58:58 -0500 | [diff] [blame] | 100 | prometheus-cadvisor: |
| 101 | image: google/cadvisor:${PROMETHEUS_CADVISOR_TAG:-latest} | ||||
| 102 | ports: | ||||
| 103 | - "${OSM_PROM_CADVISOR_PORTS:-8080:8080}" | ||||
| 104 | volumes: | ||||
| 105 | - /:/rootfs:ro | ||||
| 106 | - /var/run:/var/run:ro | ||||
| 107 | - /sys:/sys:ro | ||||
| 108 | - /var/lib/docker/:/var/lib/docker:ro | ||||
| 109 | - /dev/disk/:/dev/disk:ro | ||||
| 110 | networks: | ||||
| lavado | 1e4a88c | 2019-12-03 16:19:59 -0500 | [diff] [blame] | 111 | - netOSM |
| Eduardo Sousa | 09a1e97 | 2018-09-21 11:06:32 +0100 | [diff] [blame] | 112 | keystone: |
| Gerardo García | ffb84c5 | 2019-06-26 16:22:12 +0200 | [diff] [blame] | 113 | image: ${DOCKER_USER:-opensourcemano}/keystone:${TAG:-6} |
| Eduardo Sousa | 09a1e97 | 2018-09-21 11:06:32 +0100 | [diff] [blame] | 114 | networks: |
| 115 | - netOSM | ||||
| 116 | environment: | ||||
| Benjamin Diaz | 6e3a2b6 | 2019-02-22 16:04:34 -0300 | [diff] [blame] | 117 | DB_HOST: mysql |
| Eduardo Sousa | 09a1e97 | 2018-09-21 11:06:32 +0100 | [diff] [blame] | 118 | env_file: |
| 119 | - ./keystone.env | ||||
| 120 | ports: | ||||
| 121 | - "${OSM_KEYSTONE_PORTS:-5000:5000}" | ||||
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 122 | logging: |
| 123 | driver: "json-file" | ||||
| 124 | options: | ||||
| 125 | max-size: "100m" | ||||
| 126 | max-file: "2" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 127 | nbi: |
| Gerardo García | ffb84c5 | 2019-06-26 16:22:12 +0200 | [diff] [blame] | 128 | image: ${DOCKER_USER:-opensourcemano}/nbi:${TAG:-6} |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 129 | networks: |
| 130 | - netOSM | ||||
| 131 | volumes: | ||||
| gcalvino | 796aafb | 2018-05-10 13:29:17 +0200 | [diff] [blame] | 132 | - osm_packages:/app/storage |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 133 | environment: |
| 134 | OSMNBI_DATABASE_HOST: mongo | ||||
| 135 | OSMNBI_MESSAGE_HOST: kafka | ||||
| Eduardo Sousa | e193dfd | 2018-09-21 11:37:49 +0100 | [diff] [blame] | 136 | env_file: |
| 137 | - ./nbi.env | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 138 | ports: |
| Mike Marchetti | b842085 | 2018-09-13 13:45:06 -0400 | [diff] [blame] | 139 | - "${OSM_NBI_PORTS:-9999:9999}" |
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 140 | logging: |
| 141 | driver: "json-file" | ||||
| 142 | options: | ||||
| 143 | max-size: "100m" | ||||
| 144 | max-file: "2" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 145 | #depends_on: |
| 146 | # - kafka | ||||
| 147 | # - mongo | ||||
| 148 | lcm: | ||||
| Gerardo García | ffb84c5 | 2019-06-26 16:22:12 +0200 | [diff] [blame] | 149 | image: ${DOCKER_USER:-opensourcemano}/lcm:${TAG:-6} |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 150 | networks: |
| 151 | - netOSM | ||||
| garciadeblas | e1b66ed | 2018-05-14 11:34:26 +0200 | [diff] [blame] | 152 | volumes: |
| 153 | - osm_packages:/app/storage | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 154 | environment: |
| 155 | OSMLCM_RO_HOST: ro | ||||
| 156 | OSMLCM_DATABASE_HOST: mongo | ||||
| 157 | OSMLCM_MESSAGE_HOST: kafka | ||||
| 158 | env_file: | ||||
| 159 | - ./lcm.env | ||||
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 160 | logging: |
| 161 | driver: "json-file" | ||||
| 162 | options: | ||||
| 163 | max-size: "100m" | ||||
| 164 | max-file: "2" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 165 | #depends_on: |
| 166 | # - kafka | ||||
| 167 | # - mongo | ||||
| 168 | # - ro | ||||
| Benjamin Diaz | 6e3a2b6 | 2019-02-22 16:04:34 -0300 | [diff] [blame] | 169 | mysql: |
| garciadeblas | 4101260 | 2018-04-23 17:23:35 +0200 | [diff] [blame] | 170 | image: mysql:5 |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 171 | networks: |
| Benjamin Diaz | 6e3a2b6 | 2019-02-22 16:04:34 -0300 | [diff] [blame] | 172 | netOSM: |
| 173 | aliases: | ||||
| 174 | - ro-db | ||||
| gcalvino | 796aafb | 2018-05-10 13:29:17 +0200 | [diff] [blame] | 175 | volumes: |
| 176 | - ro_db:/var/lib/mysql | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 177 | env_file: |
| 178 | - ./ro-db.env | ||||
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 179 | logging: |
| 180 | driver: "json-file" | ||||
| 181 | options: | ||||
| 182 | max-size: "100m" | ||||
| 183 | max-file: "2" | ||||
| garciadeblas | 46e9959 | 2018-04-16 13:32:02 +0200 | [diff] [blame] | 184 | # ports: |
| 185 | # - "3306:3306" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 186 | ro: |
| Gerardo García | ffb84c5 | 2019-06-26 16:22:12 +0200 | [diff] [blame] | 187 | image: ${DOCKER_USER:-opensourcemano}/ro:${TAG:-6} |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 188 | networks: |
| 189 | - netOSM | ||||
| 190 | environment: | ||||
| Benjamin Diaz | 6e3a2b6 | 2019-02-22 16:04:34 -0300 | [diff] [blame] | 191 | RO_DB_HOST: mysql |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 192 | env_file: |
| 193 | - ./ro.env | ||||
| 194 | #depends_on: | ||||
| Benjamin Diaz | 6e3a2b6 | 2019-02-22 16:04:34 -0300 | [diff] [blame] | 195 | # - mysql |
| garciadeblas | e3697a1 | 2018-12-10 15:49:27 +0100 | [diff] [blame] | 196 | volumes: |
| 197 | - ro:/var/log/osm | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 198 | ports: |
| Mike Marchetti | b842085 | 2018-09-13 13:45:06 -0400 | [diff] [blame] | 199 | - "${OSM_RO_PORTS:-9090:9090}" |
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 200 | logging: |
| 201 | driver: "json-file" | ||||
| 202 | options: | ||||
| 203 | max-size: "100m" | ||||
| 204 | max-file: "2" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 205 | mon: |
| Gerardo García | ffb84c5 | 2019-06-26 16:22:12 +0200 | [diff] [blame] | 206 | image: ${DOCKER_USER:-opensourcemano}/mon:${TAG:-6} |
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 207 | networks: |
| 208 | - netOSM | ||||
| gcalvino | 796aafb | 2018-05-10 13:29:17 +0200 | [diff] [blame] | 209 | volumes: |
| 210 | - mon_db:/app/database | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 211 | environment: |
| Benjamin Diaz | e6f7b45 | 2019-02-07 12:09:57 -0300 | [diff] [blame] | 212 | OSMMON_MESSAGE_HOST: kafka |
| 213 | OSMMON_MESSAGE_PORT: 9092 | ||||
| garciadeblas | 46e9959 | 2018-04-16 13:32:02 +0200 | [diff] [blame] | 214 | env_file: |
| 215 | - ./mon.env | ||||
| lavado | afa54c7 | 2018-10-05 09:28:28 -0500 | [diff] [blame] | 216 | ports: |
| 217 | - "${OSM_MON_PORTS:-8662:8662}" | ||||
| gcalvino | 41440fc | 2018-03-16 13:21:21 +0100 | [diff] [blame] | 218 | #depends_on: |
| 219 | # - kafka | ||||
| Benjamin Diaz | 336c7e8 | 2019-02-27 14:01:38 -0300 | [diff] [blame] | 220 | logging: |
| 221 | driver: "json-file" | ||||
| 222 | options: | ||||
| 223 | max-file: 5 | ||||
| 224 | max-size: 10m | ||||
| Mike Marchetti | da8a9c4 | 2018-10-01 15:25:15 -0400 | [diff] [blame] | 225 | pol: |
| Gerardo García | ffb84c5 | 2019-06-26 16:22:12 +0200 | [diff] [blame] | 226 | image: ${DOCKER_USER:-opensourcemano}/pol:${TAG:-6} |
| garciadeblas | 14097dc | 2018-04-04 18:36:32 +0200 | [diff] [blame] | 227 | networks: |
| 228 | - netOSM | ||||
| lavado | 0ef7a6d | 2018-10-19 16:59:12 -0500 | [diff] [blame] | 229 | volumes: |
| 230 | - pol_db:/app/database | ||||
| garciadeblas | 14097dc | 2018-04-04 18:36:32 +0200 | [diff] [blame] | 231 | environment: |
| Benjamin Diaz | e6f7b45 | 2019-02-07 12:09:57 -0300 | [diff] [blame] | 232 | OSMPOL_MESSAGE_HOST: kafka |
| 233 | OSMPOL_MESSAGE_PORT: 9092 | ||||
| Benjamin Diaz | 0456088 | 2019-02-26 17:25:07 -0300 | [diff] [blame] | 234 | env_file: |
| 235 | - ./pol.env | ||||
| garciadeblas | 14097dc | 2018-04-04 18:36:32 +0200 | [diff] [blame] | 236 | #depends_on: |
| 237 | # - kafka | ||||
| 238 | # - mon | ||||
| Benjamin Diaz | 336c7e8 | 2019-02-27 14:01:38 -0300 | [diff] [blame] | 239 | logging: |
| 240 | driver: "json-file" | ||||
| 241 | options: | ||||
| 242 | max-file: 5 | ||||
| 243 | max-size: 10m | ||||
| garciadeblas | 14097dc | 2018-04-04 18:36:32 +0200 | [diff] [blame] | 244 | light-ui: |
| Gerardo García | ffb84c5 | 2019-06-26 16:22:12 +0200 | [diff] [blame] | 245 | image: ${DOCKER_USER:-opensourcemano}/light-ui:${TAG:-6} |
| garciadeblas | 14097dc | 2018-04-04 18:36:32 +0200 | [diff] [blame] | 246 | networks: |
| 247 | - netOSM | ||||
| 248 | environment: | ||||
| 249 | OSM_SERVER: nbi | ||||
| 250 | #depends_on: | ||||
| 251 | # - nbi | ||||
| Benjamin Diaz | 4088a9b | 2019-05-21 15:11:49 -0300 | [diff] [blame] | 252 | env_file: |
| 253 | - ./lwui.env | ||||
| garciadeblas | 14097dc | 2018-04-04 18:36:32 +0200 | [diff] [blame] | 254 | ports: |
| Mike Marchetti | b842085 | 2018-09-13 13:45:06 -0400 | [diff] [blame] | 255 | - "${OSM_UI_PORTS:-80:80}" |
| calvinosanch | 032bd77 | 2019-07-30 07:11:56 +0000 | [diff] [blame] | 256 | logging: |
| 257 | driver: "json-file" | ||||
| 258 | options: | ||||
| 259 | max-size: "100m" | ||||
| 260 | max-file: "2" | ||||
| lavado | 6ad812e | 2019-11-29 10:58:58 -0500 | [diff] [blame] | 261 | grafana: |
| 262 | image: grafana/grafana | ||||
| 263 | volumes: | ||||
| 264 | - ./files/dashboards-osm.yml:/etc/grafana/provisioning/dashboards/dashboards-osm.yml | ||||
| 265 | - ./files/osm-sample-dashboard.json:/etc/grafana/provisioning/dashboards/osm-sample-dashboard.json | ||||
| 266 | - ./files/osm-system-dashboard.json:/etc/grafana/provisioning/dashboards/osm-system-dashboard.json | ||||
| 267 | - ./files/datasource-prometheus.yml:/etc/grafana/provisioning/datasources/datasource-prometheus.yml | ||||
| 268 | hostname: grafana | ||||
| 269 | ports: | ||||
| 270 | - "${OSM_GRAFANA_PORTS:-3000:3000}" | ||||
| 271 | networks: | ||||
| garciadeblas | a7b27dc | 2019-12-04 15:06:55 +0100 | [diff] [blame^] | 272 | - netOSM |