-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdocker-compose.yml
66 lines (63 loc) · 2.65 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
---
version: "3.7"
services:
telegraf:
image: telegraf:1.33.1@sha256:67761580048d0225b80189cd93029d5576779fb55681f73504e4199801d49324
user: telegraf:${HOST_DOCKER_GROUP_ID} # host docker group id, so that telegraf has access to the docker socket
profiles:
- monitoring
networks:
monitoring-tracing:
command: | # only use config directory, but therefore we need to give a empty config file
--config-directory /etc/telegraf/telegraf.d/
--config /dev/null
volumes:
# host and docker metrics and Prometheus output settings
- ./config/telegraf:/etc/telegraf/telegraf.d
# specific Prometheus input settings - this config depends on the deployment example
- ./config/telegraf_specific_config/${TELEGRAF_SPECIFIC_CONFIG:-none}.conf:/etc/telegraf/telegraf.d/ocis.conf
# mounts to gather metrics from the host and docker inside the container
- /var/run/docker.sock:/var/run/docker.sock
- /:/hostfs:ro
environment:
HOSTNAME: ${TELEMETRY_SERVE_DOMAIN:-telemetry.infra.owncloud.test}
OCIS_URL: ${OCIS_URL:-ocis.owncloud.test}
OCIS_DEPLOYMENT_ID: ${OCIS_DEPLOYMENT_ID:-generic_ocis}
HOST_ETC: /hostfs/etc
HOST_PROC: /hostfs/proc
HOST_SYS: /hostfs/sys
HOST_VAR: /hostfs/var
HOST_RUN: /hostfs/run
HOST_MOUNT_PREFIX: /hostfs
labels:
# make the Prometheus output publicly available so that Prometheus server can scrape this endpoint
- "traefik.enable=true"
- "traefik.http.routers.telegraf.entrypoints=https"
- "traefik.http.routers.telegraf.rule=Host(`${TELEMETRY_SERVE_DOMAIN:-telemetry.owncloud.test}`)"
- "traefik.http.routers.telegraf.tls.certresolver=http"
- "traefik.http.routers.telegraf.service=telegraf"
- "traefik.http.services.telegraf.loadbalancer.server.port=9273"
logging:
driver: "local"
restart: always
jaeger-agent:
image: jaegertracing/jaeger-agent:1.62.0@sha256:93a23140820831cc4515e903218b91cfbbc814b02285e0b1f3836d9cc3e308cd
profiles:
- tracing
networks:
monitoring-tracing:
command: |
--reporter.type=grpc
--reporter.grpc.host-port=${JAEGER_COLLECTOR:-jaeger-collector.owncloud.test:443}
--reporter.grpc.tls.skip-host-verify=${INSECURE:-false}
--reporter.grpc.tls.enabled=true
--log-level=error
--agent.tags=OCIS_URL=${OCIS_URL:-ocis.owncloud.test},OCIS_DEPLOYMENT_ID=${OCIS_DEPLOYMENT_ID:-generic_ocis}
logging:
driver: "local"
restart: always
networks:
# needs to be external in order to be shared between two docker-compose stacks
monitoring-tracing:
name: ${NETWORK_NAME:-ocis-net}
external: true