uber/kraken

P2P Docker registry capable of distributing TBs of data in seconds

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 43 minutes ago
Added to GitGenius on September 9th, 2026
Created on December 6th, 2018
Open Issues & Pull Requests: 117 (+0)
GitHub issues: Enabled
Number of forks: 488
Total Stargazers: 6,744 (+0)
Total Subscribers: 78 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 19.1 days
Mean response time: 76.1 days
90th percentile: 272.8 days
Tracked items: 23

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 38% of open issues come from outside the core team, a mix of external reports and the maintainers' own roadmap. Only 8% of issues opened in the past year have been closed. Three people close 100% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 26
New in 7 days: 0
Closed in 7 days: 1
Avg open age: 514 days
Stale 30+ days: 26
Stale 90+ days: 24

Recent activity

Opened in 7 days: 0
Closed in 7 days: 1
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • good first issue (6)
  • enhancement (3)
  • go (2)
  • github_actions (1)

Detailed Description

Kraken is a P2P-powered Docker registry that focuses on scalability and availability for Docker image distribution in hybrid cloud environments.

Kraken solves the problem of efficiently distributing large Docker images across many hosts by using peer-to-peer technology rather than traditional centralized distribution. The system uses a tracker component to orchestrate participants into a pseudo-random regular graph topology, which provides high connectivity and small diameter. This design allows seeders to distribute content to thousands of peers simultaneously while maintaining near-maximum download speeds on each host, regardless of cluster size or image size. The architecture separates concerns by using pluggable backend storage options like S3, GCS, ECR, or HDFS, so Kraken acts as a distribution layer that integrates into existing registry setups rather than managing storage directly.

Organizations managing large container deployments across many hosts should consider Kraken if they need to distribute gigabyte-scale images efficiently. The tool suits hybrid cloud environments where traditional registry performance becomes a bottleneck. It is particularly valuable for clusters with thousands of hosts pulling large images simultaneously. The README identifies no direct alternatives for comparison, positioning Kraken as a specialized solution for P2P-based image distribution rather than a replacement for standard registries.

The project maintains active production usage at scale, distributing over a million blobs daily including very large artifacts. Development activity shows ongoing refinement of the core P2P distribution mechanism and storage integration points. The codebase demonstrates attention to operational concerns like high availability, with no single points of failure by design. The project includes comprehensive documentation of its architecture and design rationale, including technical talks explaining the graph topology approach.