forked from apache/beam
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
109 lines (108 loc) · 3.41 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
################################################################################
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
################################################################################
version: '3'
services:
postgresql:
image: postgres
ports:
- "5432:5432"
container_name: beampostgresql
volumes:
- beam-postgresql-data:/var/lib/postgresql/data
- ./postgres:/docker-entrypoint-initdb.d
environment:
- POSTGRES_USER=admin
- POSTGRES_PASSWORD=<PGPasswordHere>
- POSTGRES_DB=beam_metrics
influxdb:
image: influxdb:1.8.0
ports:
- "8086:8086"
- "8088:8088"
expose:
- 8086
container_name: influxdb
volumes:
- beam-influxdb-storage:/var/lib/influxdb
environment:
- INFLUXDB_BIND_ADDRESS=:8088
influxdb-restore:
build: ./influxdb
depends_on:
- influxdb
container_name: restore-backup
entrypoint: "sh"
command: ["-c", "./wait-for-it.sh influxdb:8086 -t 60 && \
influxd restore -portable -host influxdb:8088 /backup"]
grafana:
image: beamgrafana
build: ./grafana
ports:
- "3000:3000"
container_name: beamgrafana
volumes:
- beam-grafana-libdata:/var/lib/grafana
- beam-grafana-etcdata:/etc/grafana
- beam-grafana-logdata:/var/log/grafana
environment:
- GF_SECURITY_ADMIN_PASSWORD=<GrafanaPasswordHere>
- GF_AUTH_ANONYMOUS_ENABLED=true
- GF_AUTH_ANONYMOUS_ORG_NAME=Beam
- GF_INSTALL_PLUGINS=marcusolsson-json-datasource
- PSQL_DB_HOST=beampostgresql
- PSQL_DB_PORT=5432
- PSQL_DB_DBNAME=beam_metrics
- PSQL_DB_DBUSERNAME=admin
- PSQL_DB_DBPWD=<PGPasswordHere>
- INFLUX_DB_HOST=influxdb
- INFLUX_DB_PORT=8086
- INFLUX_DB_DBNAME=beam_test_metrics
syncgithub:
image: syncgithub
container_name: beamsyncgithub
build:
context: ./sync/github
dockerfile: Dockerfile
environment:
- DB_HOST=beampostgresql
- DB_PORT=5432
- DB_DBNAME=beam_metrics
- DB_DBUSERNAME=admin
- DB_DBPWD=<PGPasswordHere>
- GH_APP_ID=<GithubAppID>
- GH_APP_INSTALLATION_ID=<GithubAppInstallationID>
- GH_PEM_KEY=<GithubPemKey>
- GH_NUMBER_OF_WORKFLOW_RUNS_TO_FETCH=30
syncjenkins:
image: syncjenkins
container_name: beamsyncjenkins
build:
context: ./sync/jenkins
dockerfile: Dockerfile
environment:
- DB_HOST=beampostgresql
- DB_PORT=5432
- DB_DBNAME=beam_metrics
- DB_DBUSERNAME=admin
- DB_DBPWD=<PGPasswordHere>
volumes:
beam-postgresql-data:
beam-grafana-libdata:
beam-grafana-etcdata:
beam-grafana-logdata:
beam-influxdb-storage: