blob: 6b0d2c8f3c5e26b2c351e70c7687cfee0f944777 [file] [log] [blame]
################################################################################
# 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_DB=beam_test_metrics
- INFLUXDB_HTTP_AUTH_ENABLED=true
- INFLUXDB_BIND_ADDRESS=:8088
- INFLUXDB_USER=worker
- INFLUXDB_USER_PASSWORD=<UserPasswordHere>
- INFLUXDB_ADMIN_USER=admin
- INFLUXDB_ADMIN_PASSWORD=<AdminPasswordHere>
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
- 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
- INFLUX_DB_USER=worker
- INFLUX_DB_PASSWORD=<UserPasswordHere>
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_ACCESS_TOKEN=<GithubAccessToken>
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>
syncjira:
image: syncjira
container_name: beamsyncjira
build:
context: ./sync/jira
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: