164 lines
4.3 KiB
YAML
164 lines
4.3 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
|
|
entrypoint: ['sh', '-c', '/download-mysql.sh /skywalking/oap-libs && chmod 777 /skywalking/docker-entrypoint.sh && /skywalking/docker-entrypoint.sh']
|
|
networks:
|
|
- e2e
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
- SW_STORAGE=mysql
|
|
- SW_DATA_SOURCE_USER=root
|
|
- SW_DATA_SOURCE_PASSWORD=password
|
|
- SW_JDBC_URL=jdbc:mysql://mysql:3306/swtest?allowMultiQueries=true
|
|
- SW_CORE_TOPN_REPORT_PERIOD=2
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
mysql:
|
|
image: mysql:8.0.13
|
|
networks:
|
|
- e2e
|
|
volumes:
|
|
- ../mysql-slowsql/log:/var/lib/mysql
|
|
- ../mysql-slowsql/my.cnf:/etc/my.cnf
|
|
environment:
|
|
- "MYSQL_ROOT_PASSWORD=password"
|
|
- "MYSQL_DATABASE=swtest"
|
|
ports:
|
|
- 3306
|
|
healthcheck:
|
|
test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/3306"]
|
|
interval: 5s
|
|
timeout: 60s
|
|
retries: 120
|
|
mysql_2: &mysql
|
|
image: mysql:8.0.13
|
|
networks:
|
|
- e2e
|
|
volumes:
|
|
- ../mysql-slowsql/my.cnf:/etc/my.cnf
|
|
environment:
|
|
- "MYSQL_ROOT_PASSWORD=password"
|
|
- "MYSQL_DATABASE=swtest"
|
|
ports:
|
|
- 3306
|
|
mysql_3:
|
|
<<: *mysql
|
|
mysql-load:
|
|
image: mysql:8.0.13
|
|
depends_on:
|
|
oap:
|
|
condition: service_healthy
|
|
networks:
|
|
- e2e
|
|
entrypoint: bash
|
|
volumes:
|
|
- ./mock.sql:/docker/mock.sql
|
|
command:
|
|
- -c
|
|
- "mysql -h mysql -uroot -ppassword < /docker/mock.sql"
|
|
mysql-load_2:
|
|
image: mysql:8.0.13
|
|
depends_on:
|
|
oap:
|
|
condition: service_healthy
|
|
networks:
|
|
- e2e
|
|
entrypoint: bash
|
|
volumes:
|
|
- ./mock.sql:/docker/mock.sql
|
|
command:
|
|
- -c
|
|
- "mysql -h mysql_2 -uroot -ppassword < /docker/mock.sql"
|
|
mysql-load_3:
|
|
image: mysql:8.0.13
|
|
depends_on:
|
|
oap:
|
|
condition: service_healthy
|
|
networks:
|
|
- e2e
|
|
entrypoint: bash
|
|
volumes:
|
|
- ./mock.sql:/docker/mock.sql
|
|
command:
|
|
- -c
|
|
- "mysql -h mysql_3 -uroot -ppassword < /docker/mock.sql"
|
|
fluentbit:
|
|
image: fluent/fluent-bit:1.9
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
volumes:
|
|
- ../mysql-slowsql/log:/tmp/skywalking-logs
|
|
- ./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:
|
|
- mysql
|
|
mysql-service:
|
|
image: prom/mysqld-exporter:v0.14.0
|
|
ports:
|
|
- 9104
|
|
environment:
|
|
- DATA_SOURCE_NAME=root:password@(mysql:3306)/
|
|
networks:
|
|
- e2e
|
|
depends_on:
|
|
- mysql
|
|
mysql-service_2:
|
|
image: prom/mysqld-exporter:v0.14.0
|
|
ports:
|
|
- 9104
|
|
environment:
|
|
- DATA_SOURCE_NAME=root:password@(mysql_2:3306)/
|
|
networks:
|
|
- e2e
|
|
depends_on:
|
|
- mysql_2
|
|
mysql-service_3:
|
|
image: prom/mysqld-exporter:v0.14.0
|
|
ports:
|
|
- 9104
|
|
environment:
|
|
- DATA_SOURCE_NAME=root:password@(mysql_3:3306)/
|
|
networks:
|
|
- e2e
|
|
depends_on:
|
|
- mysql_3
|
|
otel-collector:
|
|
image: otel/opentelemetry-collector:${OTEL_COLLECTOR_VERSION}
|
|
networks:
|
|
- e2e
|
|
command: [ "--config=/etc/otel-collector-config.yaml" ]
|
|
volumes:
|
|
- ../prometheus-mysql-exporter/otel-collector-config.yaml:/etc/otel-collector-config.yaml
|
|
expose:
|
|
- 55678
|
|
depends_on:
|
|
oap:
|
|
condition: service_healthy
|
|
networks:
|
|
e2e:
|