Справочник values
Файл defaults — values.yaml в поставке чарта. Ниже — ключевые блоки для настройки развёртывания.
database
| Ключ |
Описание |
database.mode |
embedded — OrientDB в PVC; cnpg — PostgreSQL через CNPG; external — внешний PostgreSQL |
credentials
Единый источник секретов.
| Ключ |
Описание |
credentials.provider |
helm — Secret из values; externalSecrets — ESO; existing — готовые Secret |
credentials.database.* |
host, user, password, port, name — для external и bootstrap CNPG |
credentials.nexus.adminPassword |
Начальный пароль admin (PostgreSQL-режимы); источник для blobStore/trustStore Jobs |
credentials.nexus.license |
contentBase64, fileName, mountPath — лицензия Nexus |
credentials.nexus.secretJson |
Опциональный JSON secret |
credentials.existing.* |
Имена Secret при provider: existing |
credentials.externalSecrets.* |
SecretStore и mapping ключей ESO |
registryCore
| Ключ |
Описание |
registryCore.clustered |
false → Deployment; true → StatefulSet (HA) |
registryCore.replicaCount |
Число реплик (только при clustered: true) |
registryCore.image.repository / tag |
Образ core (registry.appsec.global/appsec-registry/core) |
registryCore.containerPort |
Порт Nexus в pod (8081) |
registryCore.resources |
CPU/memory requests и limits |
registryCore.env.install4jAddVmParams |
JVM flags (INSTALL4J_ADD_VM_PARAMS) |
registryCore.env.jdbcUrlParams |
Query string JDBC (?param=value) для PostgreSQL |
registryCore.env.zeroDowntimeEnabled |
NEXUS_ZERO_DOWNTIME_ENABLED |
registryCore.probes.* |
startup / liveness / readiness HTTP probes |
registryCore.rollout.type |
Recreate (standalone) или RollingUpdate (HA) |
registryCore.waitForPostgres |
InitContainer pg_isready для PostgreSQL-режимов |
registryCore.storage.* |
PVC: enabled, size, storageClass, perPod, sharedClaim, existingClaims |
registryCore.nexus.properties |
Override nexus.properties через ConfigMap |
registryCore.nexus.docker |
Docker registry connector (NodePort, registries, TLS) |
storage и PVC
| clustered |
database.mode |
PVC |
| false |
embedded |
{fullname}-data + {fullname}-nexus-data |
| false |
cnpg / external |
{fullname}-nexus-data |
| true |
cnpg / external |
perPod volumeClaimTemplate или sharedClaim |
Mount path данных: /registry-data.
registryUi
| Ключ |
Описание |
registryUi.replicaCount |
Число реплик UI |
registryUi.image.* |
Образ UI (registry.appsec.global/appsec-registry/ui) |
registryUi.service.port |
Порт Service (8080) |
registryUi.nginx.apiPath |
Путь проксирования API (/service) |
registryUi.nginx.proxy.* |
Таймауты, clientMaxBodySize (10240m по умолчанию) |
ingress и ingressNginx
| Ключ |
Описание |
ingress.enabled |
Создать Ingress |
ingress.host |
FQDN UI |
ingress.defaultRule |
Правило на Service registryUi |
ingress.ingressClassName |
Класс ingress (должен совпадать с controller) |
ingress.tls |
TLS secrets |
ingress.dockersubdomain |
Wildcard *.host для docker pull |
ingressNginx.enabled |
Subchart ingress-nginx в namespace release |
service
| Ключ |
Описание |
service.enabled |
ClusterIP Service на core |
service.nexus |
NodePort / sessionAffinity для прямого доступа к core |
service.headless |
Headless Service для StatefulSet |
seaweedfs и blobStore
Включаются парой для in-cluster S3 (dev/test).
| Ключ |
Описание |
seaweedfs.enabled |
Subchart SeaweedFS |
seaweedfs.allInOne.* |
Single-pod режим с S3 |
seaweedfs.s3.credentials.admin.* |
Access/secret key S3 |
seaweedfs.s3.existingConfigSecret |
Secret для SeaweedFS (обязателен при заданных credentials) |
seaweedfs.s3.createBuckets |
Список bucket для создания до регистрации в Nexus |
blobStore.enabled |
Post-install Job регистрации S3 blob store |
blobStore.name / bucket / prefix |
Параметры blob store в Nexus |
blobStore.endpoint |
Override S3 URL (по умолчанию http://{seaweedfs}-all-in-one:8333) |
blobStore.enabled требует seaweedfs.enabled: true. Bucket должен быть в seaweedfs.s3.createBuckets.
trustStore
| Ключ |
Описание |
trustStore.enabled |
Post-install Job загрузки CA |
trustStore.certificates[] |
alias, contentBase64 или secretName + secretKey |
trustStore.configure.hookWeight |
15 (выполняется до blobStore hook weight 20) |
cnpg
| Ключ |
Описание |
cnpg.enabled |
Subchart CloudNative-PG operator |
cnpg.crds.create |
Установка CRD оператора |
cnpg.cluster.enabled |
Создать Cluster CR (обязательно при database.mode: cnpg) |
cnpg.cluster.instances |
1 — standalone БД; 3+ — HA PostgreSQL |
cnpg.cluster.storage.* |
Размер и StorageClass тома PostgreSQL |
cnpg.database.name / owner |
Имя БД и owner Nexus |
Пароль bootstrap: credentials.database.password.
imagePullSecrets
| Ключ |
Описание |
imagePullSecrets.create |
Создать Secret из base64 dockerconfigjson |
imagePullSecrets.secret |
Содержимое dockerconfigjson |
imagePullSecrets.secretName |
Имя Secret (создаваемого или существующего) |
Прочее
| Блок |
Описание |
namespaces.nexusNs |
Опциональное создание Namespace manifest |
serviceAccount |
SA для pod'ов |
config |
Доп. ConfigMap в mountPath |
extraObjects |
Произвольные манифесты через tpl |
Правила validation
Helm template завершится ошибкой при:
registryCore.clustered: true + database.mode: embedded;
database.mode: cnpg без cnpg.cluster.enabled: true;
database.mode: external при cnpg.cluster.enabled: true;
blobStore.enabled: true без seaweedfs.enabled: true.
Пример trust store values
См. файл values/truststore-example.yaml в поставке чарта.
Проверка рендера Job:
helm template demo . -f values/truststore-example.yaml \
-s templates/nexus-truststore-config-job.yaml