mirror of
https://github.com/rustfs/rustfs.git
synced 2026-01-17 17:40:38 +00:00
* init rustfs config * improve code for rustfs-config crate * add * improve code for comment * fix: modify rustfs-config crate name * add default fn * improve error logger * fix: modify docker config yaml * improve code for config * feat: restrict kafka feature to Linux only - Add target-specific feature configuration in Cargo.toml for obs and event-notifier crates - Implement conditional compilation for kafka feature only on Linux systems - Add appropriate error handling for non-Linux platforms - Ensure backward compatibility with existing code * refactor(ci): optimize build workflow for better efficiency - Integrate GUI build steps into main build-rustfs job - Add conditional GUI build execution based on tag releases - Simplify workflow by removing redundant build-rustfs-gui job - Copy binary directly to embedded-rustfs directory without downloading artifacts - Update merge job dependency to only rely on build-rustfs - Improve cross-platform compatibility for Windows binary naming (.exe) - Streamline artifact uploading and OSS publishing process - Maintain consistent conditional logic for release operations * refactor(ci): optimize build workflow for better efficiency - Integrate GUI build steps into main build-rustfs job - Add conditional GUI build execution based on tag releases - Simplify workflow by removing redundant build-rustfs-gui job - Copy binary directly to embedded-rustfs directory without downloading artifacts - Update merge job dependency to only rely on build-rustfs - Improve cross-platform compatibility for Windows binary naming (.exe) - Streamline artifact uploading and OSS publishing process - Maintain consistent conditional logic for release operations * fix(ci): add repo-token to setup-protoc action for authentication - Add GITHUB_TOKEN parameter to arduino/setup-protoc@v3 action - Ensure proper authentication for Protoc installation in CI workflow - Maintain consistent setup across different CI environments * modify config * improve readme.md * remove env config relation * add allow(dead_code)
149 lines
4.1 KiB
YAML
149 lines
4.1 KiB
YAML
services:
|
|
otel-collector:
|
|
image: ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-contrib:0.124.0
|
|
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.5.0
|
|
environment:
|
|
- TZ=Asia/Shanghai
|
|
ports:
|
|
- "16686:16686"
|
|
- "14317:4317"
|
|
- "14318:4318"
|
|
networks:
|
|
- rustfs-network
|
|
prometheus:
|
|
image: prom/prometheus:v3.3.0
|
|
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.0
|
|
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:11.6.1
|
|
ports:
|
|
- "3000:3000" # Web UI
|
|
environment:
|
|
- GF_SECURITY_ADMIN_PASSWORD=admin
|
|
- TZ=Asia/Shanghai
|
|
networks:
|
|
- rustfs-network
|
|
|
|
node1:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.obs
|
|
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_CONSOLE_ADDRESS=:9002
|
|
- RUSTFS_OBS_CONFIG=/etc/observability/config/obs-multi.toml
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9001:9000" # 映射宿主机的 9001 端口到容器的 9000 端口
|
|
- "9101:9002"
|
|
volumes:
|
|
# - ./data:/root/data # 将当前路径挂载到容器内的 /root/data
|
|
- ./.docker/observability/config:/etc/observability/config
|
|
networks:
|
|
- rustfs-network
|
|
|
|
node2:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.obs
|
|
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_CONSOLE_ADDRESS=:9002
|
|
- RUSTFS_OBS_CONFIG=/etc/observability/config/obs-multi.toml
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9002:9000" # 映射宿主机的 9002 端口到容器的 9000 端口
|
|
- "9102:9002"
|
|
volumes:
|
|
# - ./data:/root/data
|
|
- ./.docker/observability/config:/etc/observability/config
|
|
networks:
|
|
- rustfs-network
|
|
|
|
node3:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.obs
|
|
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_CONSOLE_ADDRESS=:9002
|
|
- RUSTFS_OBS_CONFIG=/etc/observability/config/obs-multi.toml
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9003:9000" # 映射宿主机的 9003 端口到容器的 9000 端口
|
|
- "9103:9002"
|
|
volumes:
|
|
# - ./data:/root/data
|
|
- ./.docker/observability/config:/etc/observability/config
|
|
networks:
|
|
- rustfs-network
|
|
|
|
node4:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile.obs
|
|
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_CONSOLE_ADDRESS=:9002
|
|
- RUSTFS_OBS_CONFIG=/etc/observability/config/obs-multi.toml
|
|
platform: linux/amd64
|
|
ports:
|
|
- "9004:9000" # 映射宿主机的 9004 端口到容器的 9000 端口
|
|
- "9104:9002"
|
|
volumes:
|
|
# - ./data:/root/data
|
|
- ./.docker/observability/config:/etc/observability/config
|
|
networks:
|
|
- rustfs-network
|
|
|
|
networks:
|
|
rustfs-network:
|
|
driver: bridge
|
|
name: "network_rustfs_config"
|
|
driver_opts:
|
|
com.docker.network.enable_ipv6: "true"
|