# CNCF Distribution vs Pulp

**Leader by vioscaleAI score:** CNCF Distribution

| Attribute | CNCF Distribution | Pulp |
|---|---|---|
| **vioscaleAI score** | 66.3 (66% (medium)) | 49.2 (45% (low)) |
| activity.commits_last_30d | 63 | 61 |
| adoption.dependent_repos | 2,403 | 65 |
| adoption.github_stars | 10,646 | 609 |
| content.faq | `[{"answer":"Open-source implementation of the OCI Distribution Specification for storing and distributing container images. Enables organizations to tightly control their image storage and distribution pipeline with full ownership of their distribution infrastructure. It is indexed under Container Registries.","source":"https://distribution.github.io/distribution/","question":"What is CNCF Distribution?","confidence":0.6},{"answer":"CNCF Distribution is open source, so it can be self-hosted and used at no licence cost. It is released under the Apache-2.0 licence. Pricing changes often, so verify at source before relying on it.","source":"https://distribution.github.io/distribution/","question":"Is CNCF Distribution free to use?","confidence":0.6},{"answer":"Yes. CNCF Distribution can be deployed on-premise and self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://distribution.github.io/distribution/","question":"Can CNCF Distribution be self-hosted?","confidence":0.6},{"answer":"Yes. CNCF Distribution is published under the Apache-2.0 licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/distribution/distribution","question":"Is CNCF Distribution open source?","confidence":0.95}]` | `[{"answer":"Pulp enables developers and operators to fetch, upload, organize, and distribute software packages across on-premises infrastructure or cloud environments. It supports multiple content types through a plugin architecture and provides tools for repository management at scale. It is indexed under Container Registries.","source":"https://pulpproject.org","question":"What is Pulp?","confidence":0.6},{"answer":"Pulp is open source, so it can be self-hosted and used at no licence cost. It is released under the GPL-2.0 licence. Pricing changes often, so verify at source before relying on it.","source":"https://pulpproject.org","question":"Is Pulp free to use?","confidence":0.6},{"answer":"Pulp supports a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://pulpproject.org","question":"What platforms does Pulp support?","confidence":0.6},{"answer":"Yes. Pulp can be deployed cloud / SaaS, on-premise and self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://pulpproject.org","question":"Can Pulp be self-hosted?","confidence":0.6},{"answer":"We have independently confirmed GDPR for Pulp. Certifications we do not list are ones we have not been able to verify from public sources, which is not the same as Pulp not holding them. Always confirm compliance directly before you rely on it.","source":"https://pulpproject.org/help/more/governance/privacy/","question":"What security certifications does Pulp have?","confidence":0.7},{"answer":"Yes. Pulp is published under the GPL-2.0 licence, a copyleft licence, so check its terms before embedding it in a closed-source product. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/pulp/pulpcore","question":"Is Pulp open source?","confidence":0.95},{"answer":"Pulp is available worldwide. The vendor is headquartered in the United States.","source":"https://pulpproject.org","question":"Where is Pulp available?","confidence":0.75}]` |
| deployment.options | `{"cloud":true}` | `{"self_hosted":true}` |
| description.long | Docker Hub enables developers to push, pull, and manage container images with their teams, automate builds and deployments through webhooks, and control access to repositories. | Pulp is an open-source platform that enables you to mirror, host, and manage repositories of software packages and content. It allows you to organize content promotion across multiple repositories and enforce access controls through flexible content guards. |
| features.capabilities | `{"rbac":true,"web_ui":true,"hosting":"self","image_signing":true,"oci_compliant":true,"private_repos":true,"artifact_types":"images","vulnerability_scanning":true}` | `{"rbac":true,"web_ui":true,"hosting":"both","sbom_support":false,"image_signing":false,"oci_compliant":true,"private_repos":true,"artifact_types":"universal","cloud_iam_native":false,"pull_rate_limits":"none","high_availability":false,"pull_through_cache":false,"replication_mirroring":true,"vulnerability_scanning":false}` |
| integrations.count | - | 2 |
| integrations.list | - | `[{"name":"OpenAI API"},{"name":"GitHub"}]` |
| language.primary | Go | Python |
| license.spdx | Apache-2.0 | GPL-2.0 |
| market.availability | - | `{"hqCountry":"US","primaryMarkets":[],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` |
| platform.support | `{"web":true}` | `{"cli":true,"web":true}` |
| pricing | `{"type":"subscription","freeTier":true,"sourceUrl":"https://distribution.github.io/distribution/","retrievedAt":"2026-09-10T21:11:49.107Z"}` | `{"type":"open_source","freeTier":true,"sourceUrl":"https://pulpproject.org","retrievedAt":"2026-08-16T21:32:46.974Z"}` |
| pricing.free_tier | yes | yes |
| pricing.model | freemium | open_source |
| pricing.price_level | low | free |
| pricing.transparent | - | yes |
| release.cadence_days | 55 | - |
| release.history | `[{"url":"https://github.com/distribution/distribution/releases/tag/v3.1.2","date":"2026-09-24T12:21:27Z","type":"stable","version":"v3.1.2"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.1.1","date":"2026-05-01T15:51:50Z","type":"stable","version":"v3.1.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.1.0","date":"2026-04-06T17:09:31Z","type":"stable","version":"v3.1.0"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.0.0","date":"2025-04-03T06:25:36Z","type":"stable","version":"v3.0.0"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.0.0-rc.4","date":"2025-03-22T14:59:29Z","type":"prerelease","version":"v3.0.0-rc.4"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.0.0-rc.3","date":"2025-02-11T16:21:07Z","type":"prerelease","version":"v3.0.0-rc.3"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.0.0-rc.2","date":"2024-12-18T15:23:19Z","type":"prerelease","version":"v3.0.0-rc.2"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.0.0-rc.1","date":"2024-11-07T21:04:41Z","type":"prerelease","version":"v3.0.0-rc.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.0.0-beta.1","date":"2024-07-10T13:22:40Z","type":"prerelease","version":"v3.0.0-beta.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v3.0.0-alpha.1","date":"2023-12-19T16:03:36Z","type":"prerelease","version":"v3.0.0-alpha.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.8.3","date":"2023-10-02T18:23:54Z","type":"stable","version":"v2.8.3"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.8.2","date":"2023-05-11T10:47:43Z","type":"stable","version":"v2.8.2"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.8.2-beta.2","date":"2023-05-09T23:32:56Z","type":"prerelease","version":"v2.8.2-beta.2"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.8.2-beta.1","date":"2023-05-09T22:42:12Z","type":"prerelease","version":"v2.8.2-beta.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.8.1","date":"2022-03-08T18:19:10Z","type":"stable","version":"v2.8.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.8.0","date":"2022-02-07T15:53:07Z","type":"stable","version":"v2.8.0"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.8.0-beta.1","date":"2022-01-21T16:49:13Z","type":"prerelease","version":"v2.8.0-beta.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.7.1","date":"2019-01-17T23:22:32Z","type":"stable","version":"v2.7.1"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.7.0","date":"2018-12-04T00:20:01Z","type":"stable","version":"v2.7.0"},{"url":"https://github.com/distribution/distribution/releases/tag/v2.7.0-rc.0","date":"2018-09-28T23:23:36Z","type":"prerelease","version":"v2.7.0-rc.0"}]` | `[{"url":"https://github.com/pulp/pulpcore/releases/tag/3.122.2","date":"2026-10-15T19:15:35Z","type":"stable","version":"3.122.2"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.122.1","date":"2026-10-15T14:18:39Z","type":"stable","version":"3.122.1"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.118.3","date":"2026-10-15T19:36:43Z","type":"stable","version":"3.118.3"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.105.23","date":"2026-10-15T19:16:18Z","type":"stable","version":"3.105.23"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.122.0","date":"2026-10-14T16:36:25Z","type":"stable","version":"3.122.0"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.105.22","date":"2026-10-14T15:42:29Z","type":"stable","version":"3.105.22"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.85.32","date":"2026-10-14T15:42:53Z","type":"stable","version":"3.85.32"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.118.2","date":"2026-10-13T16:00:17Z","type":"stable","version":"3.118.2"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.121.3","date":"2026-10-09T19:53:11Z","type":"stable","version":"3.121.3"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.121.2","date":"2026-10-08T15:45:41Z","type":"stable","version":"3.121.2"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.121.1","date":"2026-10-08T10:00:44Z","type":"stable","version":"3.121.1"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.121.0","date":"2026-10-06T15:24:30Z","type":"stable","version":"3.121.0"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.105.21","date":"2026-10-01T14:19:40Z","type":"stable","version":"3.105.21"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.120.0","date":"2026-09-29T14:56:40Z","type":"stable","version":"3.120.0"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.119.2","date":"2026-09-29T14:18:14Z","type":"stable","version":"3.119.2"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.73.45","date":"2026-09-24T08:43:01Z","type":"stable","version":"3.73.45"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.49.71","date":"2026-09-24T08:44:30Z","type":"stable","version":"3.49.71"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.119.1","date":"2026-09-23T14:33:29Z","type":"stable","version":"3.119.1"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.119.0","date":"2026-09-23T10:32:05Z","type":"stable","version":"3.119.0"},{"url":"https://github.com/pulp/pulpcore/releases/tag/3.105.20","date":"2026-09-23T14:33:40Z","type":"stable","version":"3.105.20"}]` |
| reliability.status_page | yes | - |
| security.gdpr | - | yes |
| security.scorecard | 7.6 | - |
| security.vulnerabilities | `{"count":4,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=go&package_name=github.com%2Fdistribution%2Fdistribution%2Fv3&per_page=100","last_12m":3,"max_severity":"HIGH"}` | `{"count":2,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=pulpcore&per_page=100","last_12m":0,"max_severity":"HIGH"}` |

## Capabilities (Container Registries)

| Capability | CNCF Distribution | Pulp |
|---|:--:|:--:|
| **Deployment** |  |  |
| Hosting | Self-hosted only | Cloud + self-hosted |
| **Standards** |  |  |
| OCI Distribution Spec compliant | ✓ | ✓ |
| **Scope** |  |  |
| Artifact types | Container images only | Universal (images + language packages) |
| **Security** |  |  |
| Built-in vulnerability scanning | ✓ | ✗ |
| Image signing (Cosign/Notation) | ✓ | ✗ |
| SBOM generation / storage | - | ✗ |
| **Access** |  |  |
| Fine-grained RBAC / robot accounts | ✓ | ✓ |
| Private repositories | ✓ | ✓ |
| **Distribution** |  |  |
| Geo-replication / mirroring | - | ✓ |
| Pull-through cache / proxy | - | ✗ |
| **Integration** |  |  |
| Native cloud IAM integration | - | ✗ |
| **Pricing** |  |  |
| Pull-rate limits | - | None |
| **UX** |  |  |
| Web UI / console | ✓ | ✓ |
| **Ops** |  |  |
| High-availability deployment | - | ✗ |

*Source: vioscaleAI. Generated 2026-10-16T20:48:41.104Z. "-" = undocumented, not absent.*
