# Copyright 2024 RustFS Team # # Licensed 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. services: tempo: image: grafana/tempo:latest #user: root # The container must be started with root to execute chown in the script #entrypoint: [ "/etc/tempo/entrypoint.sh" ] # Specify a custom entry point command: [ "-config.file=/etc/tempo.yaml" ] # This is passed as a parameter to the entry point script volumes: - ./tempo-entrypoint.sh:/etc/tempo/entrypoint.sh # Mount entry point script - ./tempo.yaml:/etc/tempo.yaml - ./tempo-data:/var/tempo ports: - "3200:3200" # tempo - "24317:4317" # otlp grpc networks: - otel-network otel-collector: image: otel/opentelemetry-collector-contrib:0.129.1 environment: - TZ=Asia/Shanghai volumes: - ./otel-collector-config.yaml:/etc/otelcol-contrib/config.yaml ports: - "1888:1888" - "8888:8888" - "8889:8889" - "13133:13133" - "4317:4317" - "4318:4318" - "55679:55679" networks: - otel-network jaeger: image: jaegertracing/jaeger:2.8.0 environment: - TZ=Asia/Shanghai ports: - "16686:16686" - "14317:4317" - "14318:4318" networks: - otel-network prometheus: image: prom/prometheus:v3.4.2 environment: - TZ=Asia/Shanghai volumes: - ./prometheus.yml:/etc/prometheus/prometheus.yml ports: - "9090:9090" networks: - otel-network loki: image: grafana/loki:3.5.1 environment: - TZ=Asia/Shanghai volumes: - ./loki-config.yaml:/etc/loki/local-config.yaml ports: - "3100:3100" command: -config.file=/etc/loki/local-config.yaml networks: - otel-network grafana: image: grafana/grafana:12.0.2 ports: - "3000:3000" # Web UI volumes: - ./grafana-datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml environment: - GF_SECURITY_ADMIN_PASSWORD=admin - TZ=Asia/Shanghai networks: - otel-network networks: otel-network: driver: bridge name: "network_otel_config" driver_opts: com.docker.network.enable_ipv6: "true"