main 分支可能不稳定甚至不可用,应使用 releases 中的稳定版本;需按官方安装配置指南完成部署,不能仅靠 docker-compose 直接起;v2.15.0 起发布包用 Cosign 签名,校验需 Cosign v2.0+。
harbor
goharborApache-2.0活跃维护开源的可信云原生镜像仓库,用来存储、签名和扫描容器镜像,帮团队在 Kubernetes 环境里安全地管理和分发制品。
An open source trusted cloud native registry project that stores, signs, and scans content.
下载 Harbor release 二进制包后按官方 Installation & Configuration Guide 安装;Kubernetes 场景使用 https://github.com/goharbor/harbor-helmREADME 未说明具体硬件配置;仅要求 Linux 主机上 Docker 20.10.10-ce+ 与 docker-compose 1.18.0+,Kubernetes 部署请使用 Harbor Helm Chart。
CNCF 托管的开源可信云原生镜像仓库,在 Docker Distribution 基础上补齐安全、身份与管理能力
开源的可信云原生镜像仓库,用来存储、签名和扫描容器镜像,帮团队在 Kubernetes 环境里安全地管理和分发制品。
核心能力
- 同时托管容器镜像与 Helm Chart
- 按项目做基于角色的访问控制(RBAC)
- 基于策略在多个仓库实例间复制镜像并自动重试
- 定期扫描镜像漏洞并按策略阻止有风险镜像部署
- 集成 LDAP/AD 与 OIDC 实现企业认证和单点登录
容易踩的坑
- v2.16.0最新正式版2026-11-09 · 2026-11-09 07:47 UTC
What's Changed
Exciting New Features 🎉
- Update artifact_accessory to add source column to identify accessory by @stonezdj in https://github.com/goharbor/harbor/pull/23144
- feat: replace redis with valkey as cache backend by @chlins in https://github.com/goharbor/harbor/pull/23157
- Full Multi-Architecture Enablement for Harbor (amd64 + arm64) by @ranimandepudi in https://github.com/goharbor/harbor/pull/22311
- Add ListReferrers API to registry client and update parseScopes by @stonezdj in https://github.com/goharbor/harbor/pull/23170
- Proxy the referrer API to upstream registry with paging and local merge by @stonezdj in https://github.com/goharbor/harbor/pull/23237
- feat(ui): support advanced proxy cache configurations in UI by @stonezdj in https://github.com/goharbor/harbor/pull/23536
- feat(backend): implement proxy cache repository filter API by @stonezdj in https://github.com/goharbor/harbor/pull/23527
- Custom project roles — frontend UI by @maxgraustenzel-create in https://github.com/goharbor/harbor/pull/23970
- feat(task): aggregate execution error messages and surface task failure details by @stonezdj in https://github.com/goharbor/harbor/pull/24028
Enhancement 🚀
- Fix Last Pull time on parent/child artifacts and on creation by @BojanZelic in https://github.com/goharbor/harbor/pull/22402
- fix(proxy): preserve URL path prefix during registry auth discovery by @mco69 in https://github.com/goharbor/harbor/pull/22989
- Add UI option to enable proxy cache referrer API by @stonezdj in https://github.com/goharbor/harbor/pull/23151
- ci: add API schema drift check for v2.0 swagger spec by @infracore in https://github.com/goharbor/harbor/pull/23089
- refactor(task): use Redis SET with SPOP for outdate execution status … by @chlins in https://github.com/goharbor/harbor/pull/23183
- test(cosign): disable tlog for signing checks by @chlins in https://github.com/goharbor/harbor/pull/23279
- perf(replication): filter event policies in query by @chlins in https://github.com/goharbor/harbor/pull/23283
- fix: enable chunked blob upload for Azure ACR replication by @xrkolovos in https://github.com/goharbor/harbor/pull/23016
- feat(audit): add member create/update/delete audit events by @Mauraza in https://github.com/goharbor/harbor/pull/23228
- fix: add registry component to proxy configuration support by @Kibakus in https://github.com/goharbor/harbor/pull/23437
- fix: set MaxIdleConnsPerHost on internal HTTP transports by @chlins in https://github.com/goharbor/harbor/pull/23591
- Add proxy cache hit/miss metrics by @Jason-Lee3 in https://github.com/goharbor/harbor/pull/23578
- fix: implement signature inheritance for OCI index children by @Aloui-Ikram in https://github.com/goharbor/harbor/pull/23540
- fix(api): return 404 when listing artifacts of a non-existing repository by @tpoxa in https://github.com/goharbor/harbor/pull/17618
Component updates ⬆️
- fix the git action publish permission issue by @wy65701436 in https://github.com/goharbor/harbor/pull/22840
- fix: Update Verify Remote Cert tooltip for registry endpoints by @dee077 in https://github.com/goharbor/harbor/pull/22812
- fix: wrong operation response name for UpdateRepository by @liubin in https://github.com/goharbor/harbor/pull/22851
- fix(session): use correct maxlifetime in SessionRegenerate by @chlins in https://github.com/goharbor/harbor/pull/22873
- chore(go): ignore frontend portal directory using Go 1.25 by @Iam-Karan-Suresh in https://github.com/goharbor/harbor/pull/22702
- fix: check error first before other checks by @liubin in https://github.com/goharbor/harbor/pull/22884
- fix: bump Trivy to v0.69.2 following supply chain incident by @Aloui-Ikram in https://github.com/goharbor/harbor/pull/22896
- Remove payload from config audit log by @stonezdj in https://github.com/goharbor/harbor/pull/22913
- fix codecov issue by
- v2.16.0-rc2pre-release2026-11-06 · 2026-11-06 12:30 UTC
查看更新说明
What's Changed
Exciting New Features 🎉
- Update artifact_accessory to add source column to identify accessory by @stonezdj in https://github.com/goharbor/harbor/pull/23144
- feat: replace redis with valkey as cache backend by @chlins in https://github.com/goharbor/harbor/pull/23157
- Full Multi-Architecture Enablement for Harbor (amd64 + arm64) by @ranimandepudi in https://github.com/goharbor/harbor/pull/22311
- Add ListReferrers API to registry client and update parseScopes by @stonezdj in https://github.com/goharbor/harbor/pull/23170
- Proxy the referrer API to upstream registry with paging and local merge by @stonezdj in https://github.com/goharbor/harbor/pull/23237
- feat(ui): support advanced proxy cache configurations in UI by @stonezdj in https://github.com/goharbor/harbor/pull/23536
- feat(backend): implement proxy cache repository filter API by @stonezdj in https://github.com/goharbor/harbor/pull/23527
- Custom project roles — frontend UI by @maxgraustenzel-create in https://github.com/goharbor/harbor/pull/23970
- feat(task): aggregate execution error messages and surface task failure details by @stonezdj in https://github.com/goharbor/harbor/pull/24028
Enhancement 🚀
- Fix Last Pull time on parent/child artifacts and on creation by @BojanZelic in https://github.com/goharbor/harbor/pull/22402
- fix(proxy): preserve URL path prefix during registry auth discovery by @mco69 in https://github.com/goharbor/harbor/pull/22989
- Add UI option to enable proxy cache referrer API by @stonezdj in https://github.com/goharbor/harbor/pull/23151
- ci: add API schema drift check for v2.0 swagger spec by @infracore in https://github.com/goharbor/harbor/pull/23089
- refactor(task): use Redis SET with SPOP for outdate execution status … by @chlins in https://github.com/goharbor/harbor/pull/23183
- test(cosign): disable tlog for signing checks by @chlins in https://github.com/goharbor/harbor/pull/23279
- perf(replication): filter event policies in query by @chlins in https://github.com/goharbor/harbor/pull/23283
- fix: enable chunked blob upload for Azure ACR replication by @xrkolovos in https://github.com/goharbor/harbor/pull/23016
- feat(audit): add member create/update/delete audit events by @Mauraza in https://github.com/goharbor/harbor/pull/23228
- fix: add registry component to proxy configuration support by @Kibakus in https://github.com/goharbor/harbor/pull/23437
- fix: set MaxIdleConnsPerHost on internal HTTP transports by @chlins in https://github.com/goharbor/harbor/pull/23591
- Add proxy cache hit/miss metrics by @Jason-Lee3 in https://github.com/goharbor/harbor/pull/23578
- fix: implement signature inheritance for OCI index children by @Aloui-Ikram in https://github.com/goharbor/harbor/pull/23540
- fix(api): return 404 when listing artifacts of a non-existing repository by @tpoxa in https://github.com/goharbor/harbor/pull/17618
Component updates ⬆️
- fix the git action publish permission issue by @wy65701436 in https://github.com/goharbor/harbor/pull/22840
- fix: Update Verify Remote Cert tooltip for registry endpoints by @dee077 in https://github.com/goharbor/harbor/pull/22812
- fix: wrong operation response name for UpdateRepository by @liubin in https://github.com/goharbor/harbor/pull/22851
- fix(session): use correct maxlifetime in SessionRegenerate by @chlins in https://github.com/goharbor/harbor/pull/22873
- chore(go): ignore frontend portal directory using Go 1.25 by @Iam-Karan-Suresh in https://github.com/goharbor/harbor/pull/22702
- fix: check error first before other checks by @liubin in https://github.com/goharbor/harbor/pull/22884
- fix: bump Trivy to v0.69.2 following supply chain incident by @Aloui-Ikram in https://github.com/goharbor/harbor/pull/22896
- Remove payload from config audit log by @stonezdj in https://github.com/goharbor/harbor/pull/22913
- fix codecov issue by @wy65701436 in https://github.co
- v2.16.0-rc1pre-release2026-10-27 · 2026-10-27 07:25 UTC
查看更新说明
What's Changed
Exciting New Features 🎉
- Update artifact_accessory to add source column to identify accessory by @stonezdj in https://github.com/goharbor/harbor/pull/23144
- feat: replace redis with valkey as cache backend by @chlins in https://github.com/goharbor/harbor/pull/23157
- Full Multi-Architecture Enablement for Harbor (amd64 + arm64) by @ranimandepudi in https://github.com/goharbor/harbor/pull/22311
- Add ListReferrers API to registry client and update parseScopes by @stonezdj in https://github.com/goharbor/harbor/pull/23170
- Proxy the referrer API to upstream registry with paging and local merge by @stonezdj in https://github.com/goharbor/harbor/pull/23237
- feat(ui): support advanced proxy cache configurations in UI by @stonezdj in https://github.com/goharbor/harbor/pull/23536
- feat(backend): implement proxy cache repository filter API by @stonezdj in https://github.com/goharbor/harbor/pull/23527
- test: add api and ui integration tests for proxy cache repository filter by @fiona-xie in https://github.com/goharbor/harbor/pull/23744
- Custom project roles — frontend UI by @maxgraustenzel-create in https://github.com/goharbor/harbor/pull/23970
- feat(task): aggregate execution error messages and surface task failure details by @stonezdj in https://github.com/goharbor/harbor/pull/24028
Enhancement 🚀
- Fix Last Pull time on parent/child artifacts and on creation by @BojanZelic in https://github.com/goharbor/harbor/pull/22402
- fix(proxy): preserve URL path prefix during registry auth discovery by @mco69 in https://github.com/goharbor/harbor/pull/22989
- Add UI option to enable proxy cache referrer API by @stonezdj in https://github.com/goharbor/harbor/pull/23151
- ci: add API schema drift check for v2.0 swagger spec by @infracore in https://github.com/goharbor/harbor/pull/23089
- refactor(task): use Redis SET with SPOP for outdate execution status … by @chlins in https://github.com/goharbor/harbor/pull/23183
- test(cosign): disable tlog for signing checks by @chlins in https://github.com/goharbor/harbor/pull/23279
- perf(replication): filter event policies in query by @chlins in https://github.com/goharbor/harbor/pull/23283
- fix: enable chunked blob upload for Azure ACR replication by @xrkolovos in https://github.com/goharbor/harbor/pull/23016
- feat(audit): add member create/update/delete audit events by @Mauraza in https://github.com/goharbor/harbor/pull/23228
- fix: add registry component to proxy configuration support by @Kibakus in https://github.com/goharbor/harbor/pull/23437
- fix: set MaxIdleConnsPerHost on internal HTTP transports by @chlins in https://github.com/goharbor/harbor/pull/23591
- Add proxy cache hit/miss metrics by @Jason-Lee3 in https://github.com/goharbor/harbor/pull/23578
- fix: implement signature inheritance for OCI index children by @Aloui-Ikram in https://github.com/goharbor/harbor/pull/23540
- fix(api): return 404 when listing artifacts of a non-existing repository by @tpoxa in https://github.com/goharbor/harbor/pull/17618
Component updates ⬆️
- fix the git action publish permission issue by @wy65701436 in https://github.com/goharbor/harbor/pull/22840
- fix: Update Verify Remote Cert tooltip for registry endpoints by @dee077 in https://github.com/goharbor/harbor/pull/22812
- fix: wrong operation response name for UpdateRepository by @liubin in https://github.com/goharbor/harbor/pull/22851
- fix(session): use correct maxlifetime in SessionRegenerate by @chlins in https://github.com/goharbor/harbor/pull/22873
- chore(go): ignore frontend portal directory using Go 1.25 by @Iam-Karan-Suresh in https://github.com/goharbor/harbor/pull/22702
- fix: check error first before other checks by @liubin in https://github.com/goharbor/harbor/pull/22884
- fix: bump Trivy to v0.69.2 following supply chain incident by @Aloui-Ikram in https://github.com/goharbor/harbor/pull/22896
- Remove payload f
- v2.14.62026-10-23 · 2026-10-23 07:04 UTC
查看更新说明
What's Changed
Component updates ⬆️
- bump base version for v2.14.6 by @wy65701436 in https://github.com/goharbor/harbor/pull/24115
- Release 2.14 bump go trivy distribution by @wy65701436 in https://github.com/goharbor/harbor/pull/24122
- fix(webhook): allow private network access by default (#24082) by @wy65701436 in https://github.com/goharbor/harbor/pull/24129
- fix(prepare): expose the legacy signer pull switch in harbor.yml (#24… by @wy65701436 in https://github.com/goharbor/harbor/pull/24130
- Cherry pick upload location origin 2.14 (#24114) by @wy65701436 in https://github.com/goharbor/harbor/pull/24131
- fix(contenttrust): allow legacy signer pull by default to avoid regre… by @wy65701436 in https://github.com/goharbor/harbor/pull/24132
- (cherry-pick) support configurable PIP_INDEX_URL for swagger client build and make openapi-generator-cli download URL configurable by @stonezdj in https://github.com/goharbor/harbor/pull/24150
- [release-2.14] fix(cnai-parser): enforce actual byte limit to prevent decompression (#23497) by @Vad1mo in https://github.com/goharbor/harbor/pull/24143
- [release-2.14] fix: avoid panic in user audit event resolver on nil event data (#23461) by @Vad1mo in https://github.com/goharbor/harbor/pull/24152
- chore(deps): upgrade Go dependencies to fix High and Critical CVEs by @stonezdj in https://github.com/goharbor/harbor/pull/24190
- bump: bump Go to 1.26.10 for release-2.14.0 by @stonezdj in https://github.com/goharbor/harbor/pull/24199
Full Changelog: https://github.com/goharbor/harbor/compare/v2.14.5...v2.14.6
- v2.14.6-rc2pre-release2026-10-22 · 2026-10-22 09:28 UTC
查看更新说明
What's Changed
Component updates ⬆️
- bump base version for v2.14.6 by @wy65701436 in https://github.com/goharbor/harbor/pull/24115
- Release 2.14 bump go trivy distribution by @wy65701436 in https://github.com/goharbor/harbor/pull/24122
- fix(webhook): allow private network access by default (#24082) by @wy65701436 in https://github.com/goharbor/harbor/pull/24129
- fix(prepare): expose the legacy signer pull switch in harbor.yml (#24… by @wy65701436 in https://github.com/goharbor/harbor/pull/24130
- Cherry pick upload location origin 2.14 (#24114) by @wy65701436 in https://github.com/goharbor/harbor/pull/24131
- fix(contenttrust): allow legacy signer pull by default to avoid regre… by @wy65701436 in https://github.com/goharbor/harbor/pull/24132
- (cherry-pick) support configurable PIP_INDEX_URL for swagger client build and make openapi-generator-cli download URL configurable by @stonezdj in https://github.com/goharbor/harbor/pull/24150
- [release-2.14] fix(cnai-parser): enforce actual byte limit to prevent decompression (#23497) by @Vad1mo in https://github.com/goharbor/harbor/pull/24143
- [release-2.14] fix: avoid panic in user audit event resolver on nil event data (#23461) by @Vad1mo in https://github.com/goharbor/harbor/pull/24152
- chore(deps): upgrade Go dependencies to fix High and Critical CVEs by @stonezdj in https://github.com/goharbor/harbor/pull/24190
- bump: bump Go to 1.26.10 for release-2.14.0 by @stonezdj in https://github.com/goharbor/harbor/pull/24199
Full Changelog: https://github.com/goharbor/harbor/compare/v2.14.5...v2.14.6-rc2
用户点评
登录用户的真实使用记录,可按版本和硬件筛选还没有人点评。第一个说出真实体验的人最有价值。
Harbor
| The Harbor Project holds bi-weekly community calls in two different timezones. To join the community calls or to watch previous meeting notes and recordings, please visit the meeting schedule. |
Note: The main branch may be in an unstable or even broken state during development.
Please use releases instead of the main branch in order to get a stable set of binaries.
Harbor is an open source trusted cloud native registry project that stores, signs, and scans content. Harbor extends the open source Docker Distribution by adding the functionalities usually required by users such as security, identity and management. Having a registry closer to the build and run environment can improve the image transfer efficiency. Harbor supports replication of images between registries, and also offers advanced security features such as user management, access control and activity auditing.
Harbor is hosted by the Cloud Native Computing Foundation (CNCF). If you are an organization that wants to help shape the evolution of cloud native technologies, consider joining the CNCF. For details about who is involved and how Harbor plays a role, read the CNCF announcement.
Features
- Cloud native registry: With support for both container images and Helm charts, Harbor serves as registry for cloud native environments like container runtimes and orchestration platforms.
- Role based access control: Users access different repositories through 'projects' and a user can have different permission for images or Helm charts under a project.
- Policy based replication: Images and charts can be replicated (synchronized) between multiple registry instances based on policies with using filters (repository, tag and label). Harbor automatically retries a replication if it encounters any errors. This can be used to assist loadbalancing, achieve high availability, and facilitate multi-datacenter deployments in hybrid and multi-cloud scenarios.
- Vulnerability Scanning: Harbor scans images regularly for vulnerabilities and has policy checks to prevent vulnerable images from being deployed.
- LDAP/AD support: Harbor integrates with existing enterprise LDAP/AD for user authentication and management, and supports importing LDAP groups into Harbor that can then be given permissions to specific projects.
- OIDC support: Harbor leverages OpenID Connect (OIDC) to verify the identity of users authenticated by an external authorization server or identity provider. Single sign-on can be enabled to log into the Harbor portal.
- Image deletion & garbage collection: System administrators can run garbage collection jobs so that images (dangling manifests and unreferenced blobs) can be deleted and their space can be freed up periodically.
- Graphical user portal: User can easily browse, search repositories and manage projects.
- Auditing: All the operations to the repositories are tracked through logs.
- RESTful API: RESTful APIs are provided to facilitate administrative operations, and are easy to use for integration with external systems. An embedded Swagger UI is available for exploring and testing the API.
- Easy deployment: Harbor can be deployed via Docker compose as well Helm Chart, and a Harbor Operator was added recently as well.
Architecture
For learning the architecture design of Harbor, check the document Architecture Overview of Harbor.
API
- Harbor RESTful API: The APIs for most administrative operations of Harbor and can be used to perform integrations with Harbor programmatically.
- Part 1: New or changed APIs
Install & Run
System requirements:
On a Linux host: docker 20.10.10-ce+ and docker-compose 1.18.0+.
Download binaries of Harbor release and follow Installation & Configuration Guide to install Harbor.
If you want to deploy Harbor on Kubernetes, please use the Harbor chart.
Refer to the documentation for more details on how to use Harbor.
Verifying Release Signatures
Starting with v2.15.0, Harbor release artifacts are cryptographically signed using Cosign to ensure authenticity and integrity.
Download the installers and signature bundles from the Harbor releases page.
Quick Verification
# Install Cosign (v2.0+)
brew install sigstore/tap/cosign
# Verify signature
cosign verify-blob \
--bundle harbor-offline-installer-v2.15.0.tgz.sigstore.json \
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
--certificate-identity-regexp '^https://github.com/goharbor/harbor/.github/workflows/publish_release.yml@refs/tags/v.*$' \
harbor-offline-installer-v2.15.0.tgz
-
Expected output: Verified OK
-
Full verification guide: docs/signature-verification.md
OCI Distribution Conformance Tests
Check the OCI distribution conformance tests report of Harbor.
Compatibility
The compatibility list document provides compatibility information for the Harbor components.
Community
- Twitter: @project_harbor
- User Group: Join Harbor user email group: [email protected] to get update of Harbor's news, features, releases, or to provide suggestion and feedback.
- Developer Group: Join Harbor developer group: [email protected] for discussion on Harbor development and contribution.
- Slack: Join Harbor's community for discussion and ask questions: Cloud Native Computing Foundation, channel: #harbor and #harbor-dev
Demos
- Live Demo - A demo environment with the latest Harbor stable build installed. For additional information please refer to this page.
- Video Demos - Demos for Harbor features and continuously updated.
Partners and Users
For a list of users, please refer to ADOPTERS.md.
Security
Security Audit
A third party security audit was performed by Cure53 in October 2019. You can see the full report here.
Reporting security vulnerabilities
If you've found a security related issue, a vulnerability, or a potential vulnerability in Harbor, do not file a public issue. Report it privately via GitHub private vulnerability reporting: open the Security tab and click Report a vulnerability. The Harbor Security Team will acknowledge your report, and will follow up in the advisory thread once we've identified the issue positively or negatively.
For further details please see our complete security release process.
License
Harbor is available under the Apache 2 license.
This project uses open source components which have additional licensing terms. The official docker images and licensing terms for these open source components can be found at the following locations:
- Photon OS 1.0: docker image, license