skywalking/test/e2e-v2/cases/redis/redis-exporter/docker-compose.yml

117 lines
3.1 KiB
YAML

# 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: '2.1'
services:
oap:
extends:
file: ../../../script/docker-compose/base-compose.yml
service: oap
ports:
- 12800
networks:
- e2e
environment:
- TZ=Asia/Shanghai
- SW_CORE_TOPN_REPORT_PERIOD=2
redis_1: &redis
image: redis:6.0
networks:
- e2e
volumes:
- ./redis.conf:/etc/redis/redis.conf
ports:
- 6379
command:
redis-server /etc/redis/redis.conf
healthcheck:
test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/6379"]
interval: 5s
timeout: 60s
retries: 120
redis_2:
<<: *redis
redis_3:
<<: *redis
redis_mock:
<<: *redis
volumes:
- ./redis.conf:/etc/redis/redis.conf
- ./mock.txt:/etc/redis/mock.txt
depends_on:
- otel-collector
- redis_1
- redis_exporter_1
entrypoint: bash
command:
- -c
- "cat /etc/redis/mock.txt | redis-cli -h redis_1 -p 6379 && redis-server /etc/redis/redis.conf "
redis_exporter_1: &redis_exporter
image: oliver006/redis_exporter:v1.48.0-alpine
networks:
- e2e
ports:
- 9121
environment:
- REDIS_ADDR=redis_1:6379
redis_exporter_2:
<<: *redis_exporter
ports:
- 9121
environment:
- REDIS_ADDR=redis_2:6379
redis_exporter_3:
<<: *redis_exporter
environment:
- REDIS_ADDR=redis_3:6379
otel-collector:
image: otel/opentelemetry-collector:${OTEL_COLLECTOR_VERSION}
networks:
- e2e
command: [ "--config=/etc/otel-collector-config.yaml" ]
volumes:
- ./otel-collector-config.yaml:/etc/otel-collector-config.yaml
expose:
- 55678
depends_on:
oap:
condition: service_healthy
fluentbit:
image: fluent/fluent-bit:1.9
environment:
- TZ=Asia/Shanghai
volumes:
- ./scripts:/scripts
- ./fluent-bit.conf:/fluent-bit/etc/fluent-bit.conf
- ./fluent-bit-parser.conf:/fluent-bit/etc/fluent-bit-parser.conf
- ./fluent-bit-script.lua:/fluent-bit/etc/fluent-bit-script.lua
networks:
- e2e
depends_on:
- slowlog
slowlog:
image: redis:6.0
volumes:
- ./scripts:/scripts
networks:
- e2e
command: sh -c "chmod 777 /scripts/start.sh /scripts/slowlog.sh /scripts/slowlog.log && /scripts/start.sh"
networks:
e2e: