This directory contains comprehensive documentation for using otel-distro-builder to create custom OpenTelemetry Collector distributions.
Generate an OCB manifest from an existing collector config.yaml so you can build a minimal distribution with only the components you use. This guide covers:
- Generating a manifest (host CLI, no Docker required)
- Config-to-manifest options (
--from-config,--generate-only,--no-bindplane, etc.) - Generate-and-build in one step
- Bindplane components and excluding them
- Troubleshooting unknown components and version mismatches
Learn how to use the run_local_build.sh script for local builds. This guide covers:
- Running builds with the script
- Available command-line options
- Using Make commands
- Managing artifacts
- Troubleshooting common issues
Learn how to use run_local_build.sh -p to build collector binaries for multiple architectures in one run. This guide covers:
- When to use multi-arch vs single-platform builds
- How the script chooses the Docker image platform (host-native)
- Available options (
-m,-o,-p,-n,-v,-g,-s) - Using Make targets (
multiarch-build-local,multiarch-build) - Troubleshooting (SIGSEGV, OOM, platform list)
Learn how to build custom OpenTelemetry Collector distributions using Docker. This guide covers:
- Setting up your environment
- Creating manifest files
- Running builds with Docker
- Managing artifacts
- Troubleshooting common issues
Learn how to integrate otel-distro-builder into your CI/CD pipeline using GitHub Actions. This guide covers:
- Setting up GitHub Actions workflows
- Configuring the
otel-distro-builderaction - Managing releases and artifacts
- Multi-platform builds
- Best practices and troubleshooting
Learn how to use otel-distro-builder with Google Cloud Build for enterprise-scale builds. This guide covers:
- Setting up Google Cloud Build
- Configuring build pipelines
- Managing artifacts in Google Cloud Storage
- Security and permissions
- Cost optimization and best practices
If you find any issues or have suggestions for improving the documentation, please:
- Open an issue in the GitHub repository
- Submit a pull request with your proposed changes
- Follow the existing documentation style and format
docs/
├── README.md # This landing page
├── config-to-manifest.md # Generate manifest from config.yaml
├── local-build-script.md # Local build script guide
├── local-multiarch-build-script.md # Local multi-arch build script guide
├── docker.md # Docker usage guide
├── github-actions.md # GitHub Actions usage guide
└── google-cloud-build.md # Google Cloud Build usage guide