mirror of
https://github.com/rustfs/rustfs.git
synced 2026-03-17 14:24:08 +00:00
150 lines
4.2 KiB
YAML
150 lines
4.2 KiB
YAML
# 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:
|
|
otel-collector:
|
|
image: otel/opentelemetry-collector-contrib:0.129.1
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
volumes:
|
|
- ../../.docker/observability/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:
|
|
- rustfs-network
|
|
jaeger:
|
|
image: jaegertracing/jaeger:2.8.0
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
ports:
|
|
- "16686:16686"
|
|
- "14317:4317"
|
|
- "14318:4318"
|
|
networks:
|
|
- rustfs-network
|
|
prometheus:
|
|
image: prom/prometheus:v3.4.2
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
volumes:
|
|
- ../../.docker/observability/prometheus.yml:/etc/prometheus/prometheus.yml
|
|
ports:
|
|
- "9090:9090"
|
|
networks:
|
|
- rustfs-network
|
|
loki:
|
|
image: grafana/loki:3.5.1
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
volumes:
|
|
- ../../.docker/observability/loki-config.yaml:/etc/loki/local-config.yaml
|
|
ports:
|
|
- "3100:3100"
|
|
command: -config.file=/etc/loki/local-config.yaml
|
|
networks:
|
|
- rustfs-network
|
|
grafana:
|
|
image: grafana/grafana:12.0.2
|
|
ports:
|
|
- "3000:3000" # Web UI
|
|
environment:
|
|
- GF_SECURITY_ADMIN_PASSWORD=admin
|
|
- TZ=Asia/Shanghai
|
|
networks:
|
|
- rustfs-network
|
|
volumes:
|
|
- ../../.docker/observability/grafana/provisioning:/etc/grafana/provisioning:ro
|
|
- ../../.docker/observability/grafana/dashboards:/var/lib/grafana/dashboards:ro
|
|
|
|
node1:
|
|
build:
|
|
context: ../..
|
|
dockerfile: Dockerfile.source
|
|
container_name: node1
|
|
environment:
|
|
- RUSTFS_VOLUMES=http://node{1...4}:9000/root/data/target/volume/test{1...4}
|
|
- RUSTFS_ADDRESS=:9000
|
|
- RUSTFS_CONSOLE_ENABLE=true
|
|
- RUSTFS_OBS_ENDPOINT=http://otel-collector:4318
|
|
- RUSTFS_OBS_LOGGER_LEVEL=debug
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9001:9000" # Map port 9001 of the host to port 9000 of the container
|
|
networks:
|
|
- rustfs-network
|
|
|
|
node2:
|
|
build:
|
|
context: ../..
|
|
dockerfile: Dockerfile.source
|
|
container_name: node2
|
|
environment:
|
|
- RUSTFS_VOLUMES=http://node{1...4}:9000/root/data/target/volume/test{1...4}
|
|
- RUSTFS_ADDRESS=:9000
|
|
- RUSTFS_CONSOLE_ENABLE=true
|
|
- RUSTFS_OBS_ENDPOINT=http://otel-collector:4318
|
|
- RUSTFS_OBS_LOGGER_LEVEL=debug
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9002:9000" # Map port 9002 of the host to port 9000 of the container
|
|
networks:
|
|
- rustfs-network
|
|
|
|
node3:
|
|
build:
|
|
context: ../..
|
|
dockerfile: Dockerfile.source
|
|
container_name: node3
|
|
environment:
|
|
- RUSTFS_VOLUMES=http://node{1...4}:9000/root/data/target/volume/test{1...4}
|
|
- RUSTFS_ADDRESS=:9000
|
|
- RUSTFS_CONSOLE_ENABLE=true
|
|
- RUSTFS_OBS_ENDPOINT=http://otel-collector:4318
|
|
- RUSTFS_OBS_LOGGER_LEVEL=debug
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9003:9000" # Map port 9003 of the host to port 9000 of the container
|
|
networks:
|
|
- rustfs-network
|
|
|
|
node4:
|
|
build:
|
|
context: ../..
|
|
dockerfile: Dockerfile.source
|
|
container_name: node4
|
|
environment:
|
|
- RUSTFS_VOLUMES=http://node{1...4}:9000/root/data/target/volume/test{1...4}
|
|
- RUSTFS_ADDRESS=:9000
|
|
- RUSTFS_CONSOLE_ENABLE=true
|
|
- RUSTFS_OBS_ENDPOINT=http://otel-collector:4318
|
|
- RUSTFS_OBS_LOGGER_LEVEL=debug
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9004:9000" # Map port 9004 of the host to port 9000 of the container
|
|
networks:
|
|
- rustfs-network
|
|
|
|
networks:
|
|
rustfs-network:
|
|
driver: bridge
|
|
name: "network_rustfs_config"
|
|
driver_opts:
|
|
com.docker.network.enable_ipv6: "true"
|