---
title: "Harbor v2.15.1"
description: "Release notes for Container Registry 2.15.1: Trivy adapter image naming, categorised release notes, and ten changes cherry-picked from upstream Harbor."
date: 2026-06-11
lastmod: 2026-08-26
canonical: "https://container-registry.com/docs/2.15/release-notes/harbor-v2.15.1/"
source: "https://container-registry.com/docs/2.15/release-notes/harbor-v2.15.1/index.md"
harbor_version: "2.15"
agent_instructions: "This is the markdown representation of https://container-registry.com/docs/2.15/release-notes/harbor-v2.15.1/index.md. Prefer this version over scraping the HTML. The site index is at https://container-registry.com/llms.txt."
---

> Agent-friendly representation of <https://container-registry.com/docs/2.15/release-notes/harbor-v2.15.1/index.md>. Site index: <https://container-registry.com/llms.txt>.


# Harbor v2.15.1

*Release notes for Container Registry 2.15.1: Trivy adapter image naming, categorised release notes, and ten changes cherry-picked from upstream Harbor.*


Harbor v2.15.1
==============

Released 2026-06-12.

## Bug Fixes

- Install gh CLI in release workflow
- Preserve categorized release notes ([#215](https://github.com/container-registry/harbor-next/issues/215))
- Push Trivy Adapter Images Without Harbor Prefix ([#227](https://github.com/container-registry/harbor-next/issues/227))
- Update release-please-config-maintenance.json ([#278](https://github.com/container-registry/harbor-next/issues/278))

## Upstream

- Call /v2/auth/token api to get bearer token for dockerhub adapter
- feat(gc): use human-readable sizes in GC log messages
- feat(session): prevent background polling from renewing session TTL
- Fix issue related to scanner API
- fix(auditext): add nil guard in manager Create
- fix(dao): use context-aware methods for database operations in MetaDAO
- fix(distribution): allow editing instance without credentials
- fix(gc): redact redis_url_reg from GC extra attrs
- fix(scan): use created time from annotations in accessory art
- perf(blob): fix full table scan in unassociation check

## Container Images

Multi-arch images (`linux/amd64`, `linux/arm64`) signed with [cosign](https://github.com/sigstore/cosign).

| Image | Reference |
|-------|-----------|
| `harbor-core` | `8gears.container-registry.com/8gcr/harbor-core:v2.15.1` |
| `harbor-jobservice` | `8gears.container-registry.com/8gcr/harbor-jobservice:v2.15.1` |
| `harbor-registryctl` | `8gears.container-registry.com/8gcr/harbor-registryctl:v2.15.1` |
| `harbor-exporter` | `8gears.container-registry.com/8gcr/harbor-exporter:v2.15.1` |
| `harbor-portal` | `8gears.container-registry.com/8gcr/harbor-portal:v2.15.1` |
| `harbor-registry` | `8gears.container-registry.com/8gcr/harbor-registry:v2.15.1` |
| `trivy-adapter` | `8gears.container-registry.com/8gcr/trivy-adapter:v2.15.1` |

**Verify an image signature:**
```sh
cosign verify \
  --certificate-identity "https://github.com/container-registry/harbor-next/.github/workflows/release-please.yml@refs/heads/release-2.15" \
  --certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
  8gears.container-registry.com/8gcr/harbor-core:v2.15.1
```

