moby/moby
How to contribute
This section captures what a Moby contributor needs to know to make a useful PR. The authoritative documents in the repo are CONTRIBUTING.md and docs/contributing/; this wiki summarizes them and adds practical pointers.
Sub-pages
- Development workflow — branches, commits, PRs, reviews.
- Testing — what to run before opening a PR.
- Debugging — daemon logs, pprof, common failure modes.
- Patterns and conventions — coding style and architectural rules.
- Tooling — Makefile,
hack/, golangci-lint, CI.
What contributions look like
Per CONTRIBUTING.md:
- Code goes under
api/,client/,daemon/,integration/,cmd/, orcontrib/. The repo root is for build/config files only. - New utility code prefers
daemon/internal/over the legacy publicpkg/. - The
integration-cli/suite is closed for new tests; new tests go inintegration/<area>/. - All commits must include a Signed-off-by trailer (DCO) —
git commit -s.
Process at a glance
- Open or claim an issue. Significant features should be discussed before code is written.
- Fork, branch, and code. Follow the patterns and conventions.
- Run
make validateandmake test-unitlocally. - Open a PR. CI runs
validate, unit, integration, Windows, and BuildKit checks (see.github/workflows/). - Two maintainers (commit bit holders, see
MAINTAINERS) approve the PR before merge.
The full review process for non-trivial changes is documented in project/REVIEWING.md.
Where to ask
- GitHub issues for bugs and feature discussion.
- The Moby Slack workspace (linked from
README.md). - Periodic Moby Summit events.
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.