This repository has been archived by the owner on Dec 7, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
/
docker-compose.yml
121 lines (111 loc) · 3.61 KB
/
docker-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
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
version: '3'
networks:
default:
services:
mongodb:
image: mongo:3.4
container_name: tia_mongo
ports:
- 27017:27017
environment:
- MONGO_INITDB_DATABASE=gravitee
volumes:
- ./mongo/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
- ./data/mongo:/data/db
- ./logs/mongodb:/var/log/mongodb
elasticsearch:
image: elasticsearch:5.6.3
container_name: tia_elasticsearch
ports:
- 9200:9200
environment:
- http.host=0.0.0.0
- transport.host=0.0.0.0
- xpack.security.enabled=false
- xpack.monitoring.enabled=false
- cluster.name=elasticsearch
ulimits:
nofile: 65536
volumes:
- ./data/elasticsearch:/usr/share/elasticsearch/data
- ./logs/elasticsearch:/var/log/elasticsearch
beerapi:
build: ./beer-app
container_name: tia_beerapi
labels:
- "traefik.frontend.rule=Host:beer-api.docker.localhost"
depends_on:
- mongodb
beerui:
image: nginx:1.13.10-alpine
container_name: tia_beerui
labels:
- "traefik.frontend.rule=Host:beer-ui.docker.localhost"
volumes:
- ./beer-ui:/usr/share/nginx/html
restart: unless-stopped
keycloak:
image: jboss/keycloak
container_name: tia_keycloak
labels:
- "traefik.frontend.rule=Host:keycloak.docker.localhost"
environment:
- KEYCLOAK_USER=admin
- KEYCLOAK_PASSWORD=admin
- PROXY_ADDRESS_FORWARDING=true
gateway:
image: graviteeio/gateway:latest
labels:
- "traefik.frontend.rule=Host:gio-gw.docker.localhost"
container_name: tia_gateway
volumes:
- ./plugins:/opt/graviteeio-gateway/plugins-ext
environment:
- gravitee_management_mongodb_uri=mongodb://mongodb:27017/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
- gravitee_ratelimit_mongodb_uri=mongodb://mongodb:27017/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
- gravitee_reporters_elasticsearch_endpoints_0=http://elasticsearch:9200
- gravitee_plugins_path_0=$${gravitee.home}/plugins
- gravitee_plugins_path_1=$${gravitee.home}/plugins-ext
depends_on:
- mongodb
- elasticsearch
- keycloak
- beerapi
managementui:
image: graviteeio/management-ui:latest
container_name: tia_mgmt_ui
labels:
- "traefik.frontend.rule=Host:gio-portal.docker.localhost"
environment:
- MGMT_API_URL=http:\/\/gio-api.docker.localhost\/management\/
depends_on:
- managementapi
managementapi:
image: graviteeio/management-api:latest
container_name: tia_mgmt_api
labels:
- "traefik.frontend.rule=Host:gio-api.docker.localhost"
volumes:
- ./plugins:/opt/graviteeio-management-api/plugins-ext
environment:
- gravitee_management_mongodb_uri=mongodb://mongodb:27017/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
- gravitee_ratelimit_mongodb_uri=mongodb://mongodb:27017/gravitee?serverSelectionTimeoutMS=5000&connectTimeoutMS=5000&socketTimeoutMS=5000
- gravitee_analytics_elasticsearch_endpoints_0=http://elasticsearch:9200
- gravitee_user_login_defaultApplication=false
- gravitee_plugins_path_0=$${gravitee.home}/plugins
- gravitee_plugins_path_1=$${gravitee.home}/plugins-ext
depends_on:
- mongodb
- elasticsearch
reverse-proxy:
image: traefik
command: --api --docker
networks:
default:
aliases:
- keycloak.docker.localhost
ports:
- "80:80"
- "8080:8080"
volumes:
- /var/run/docker.sock:/var/run/docker.sock