Управляемый реестр контейнеров Harbor
Harbor — это доверенный cloud-native-реестр с открытым исходным кодом для хранения, подписывания и сканирования содержимого.
Предварительные требования
The Cozystack Harbor app stores its registry data exclusively in S3-compatible object storage: the chart pins the registry backend to S3 and exposes no filesystem option. That bucket is provisioned through COSI (objectstorage.k8s.io) from a SeaweedFS deployment, so before deploying Harbor the tenant must have SeaweedFS available — enabled on the same tenant or inherited from a parent tenant (the resolved class is propagated down the tenant tree, surfaced as the namespace.cozystack.io/seaweedfs namespace label).
Включите SeaweedFS, задав seaweedfs: true для tenant (или родительского tenant):
seaweedfs: true
Если в цепочке tenants нет объектного хранилища, Harbor не может подготовить бакет реестра: ресурсы <release>-registry типов BucketClaim/BucketAccess так и не создают Secret с учетными данными <release>-registry-bucket, поэтому HelmRelease Harbor не может перейти в согласованное состояние и ожидает BucketInfo.
Параметр
storageClassпомечен в схеме чарта как неизменяемый. Описание контракта и список компонентов, обеспечивающих его соблюдение, приведены вdocs/storage-immutability.md.
Параметры
Общие параметры
| Имя | Описание | Тип | Значение |
|---|---|---|---|
host | Имя хоста для внешнего доступа к Harbor (по умолчанию используется поддомен ‘harbor’ хоста tenant). | string | "" |
storageClass | StorageClass для хранения данных. | string | "" |
Настройка компонентов
| Имя | Описание | Тип | Значение |
|---|---|---|---|
core | Конфигурация основного API-сервера. | object | {} |
core.resources | Явная конфигурация CPU и памяти. Если параметр не задан, применяется пресет, указанный в resourcesPreset. | object | {} |
core.resources.cpu | Количество выделенных ядер CPU. | quantity | "" |
core.resources.memory | Объем выделенной памяти. | quantity | "" |
core.resourcesPreset | Пресет ресурсов по умолчанию, используемый, если параметр resources не задан. | string | t1.small |
registry | Конфигурация реестра образов контейнеров. | object | {} |
registry.resources | Явная конфигурация CPU и памяти. Если параметр не задан, применяется пресет, указанный в resourcesPreset. | object | {} |
registry.resources.cpu | Количество выделенных ядер CPU. | quantity | "" |
registry.resources.memory | Объем выделенной памяти. | quantity | "" |
registry.resourcesPreset | Пресет ресурсов по умолчанию, используемый, если параметр resources не задан. | string | t1.small |
jobservice | Конфигурация сервиса фоновых заданий. | object | {} |
jobservice.resources | Явная конфигурация CPU и памяти. Если параметр не задан, применяется пресет, указанный в resourcesPreset. | object | {} |
jobservice.resources.cpu | Количество выделенных ядер CPU. | quantity | "" |
jobservice.resources.memory | Объем выделенной памяти. | quantity | "" |
jobservice.resourcesPreset | Пресет ресурсов по умолчанию, используемый, если параметр resources не задан. | string | t1.nano |
trivy | Конфигурация сканера уязвимостей Trivy. | object | {} |
trivy.enabled | Включение или отключение сканера уязвимостей. | bool | true |
trivy.size | Размер постоянного тома для кэша базы данных уязвимостей. | quantity | 5Gi |
trivy.resources | Явная конфигурация CPU и памяти. Если параметр не задан, применяется пресет, указанный в resourcesPreset. | object | {} |
trivy.resources.cpu | Количество выделенных ядер CPU. | quantity | "" |
trivy.resources.memory | Объем выделенной памяти. | quantity | "" |
trivy.resourcesPreset | Пресет ресурсов по умолчанию, используемый, если параметр resources не задан. | string | t1.nano |
database | Конфигурация базы данных PostgreSQL. | object | {} |
database.size | Размер постоянного тома для хранения базы данных. | quantity | 5Gi |
database.replicas | Количество экземпляров базы данных. | int | 2 |
redis | Конфигурация кэша Redis. | object | {} |
redis.size | Размер постоянного тома для хранения кэша. | quantity | 1Gi |
redis.replicas | Количество реплик Redis. | int | 2 |