Значения ниже настраивают Helm-релиз Deckhouse Code сверх минимальной установки из раздела Быстрый старт. Каждое имя значения здесь совпадает с именем в values.yaml чарта; раздел Расширенная настройка перечисляет все значения, которые принимает чарт.

Адреса и Ingress

global.hosts.domain задаёт базовый домен инстанса. global.ingress.class выбирает Ingress-контроллер, который его обслуживает. Чарт создаёт объект Ingress для веб-интерфейса на этом домене и ещё один для каждого включённого необязательного компонента, например реестра контейнеров или Pages.

global:
  hosts:
    domain: code.example.com
  ingress:
    class: <INGRESS_CLASS_NAME>

TLS

global.ingress.tls.secretName задаёт имя Kubernetes Secret с сертификатом и закрытым ключом для global.hosts.domain. Каждый объект Ingress, который создаёт чарт, ссылается на этот Secret.

global:
  ingress:
    tls:
      secretName: <TLS_SECRET_NAME>

Secret должен существовать в пространстве имён релиза до выполнения helm upgrade; чарт не создаёт и не продлевает его.

PostgreSQL

global.psql.host и global.psql.port задают адрес внешнего сервера PostgreSQL. global.psql.database и global.psql.username задают базу данных и роль, от имени которой подключается Deckhouse Code. global.psql.password.secretName и global.psql.password.key указывают на Secret с паролем.

global:
  psql:
    host: <POSTGRESQL_HOST>
    port: 5432
    database: <POSTGRESQL_DATABASE>
    username: <POSTGRESQL_USERNAME>
    password:
      secretName: <POSTGRESQL_PASSWORD_SECRET>
      key: password

К этому серверу подключается каждый компонент, который читает или записывает данные приложения; чарт не разворачивает PostgreSQL.

Redis

global.redis.host и global.redis.port задают адрес внешнего сервера Redis. global.redis.password.secretName и global.redis.password.key указывают на Secret с паролем, если сервер его требует.

global:
  redis:
    host: <REDIS_HOST>
    port: 6379
    password:
      secretName: <REDIS_PASSWORD_SECRET>
      key: password

Redis хранит очереди фоновых задач, кеш и сессии; чарт не разворачивает Redis.

Объектное хранилище

global.appConfig.object_store.enabled включает S3-совместимое объектное хранилище для артефактов CI/CD, загруженных файлов и архивов резервных копий. global.appConfig.object_store.connection.secretName задаёт имя Secret с адресом, регионом и ключами доступа.

global:
  appConfig:
    object_store:
      enabled: true
      connection:
        secretName: <OBJECT_STORE_CONNECTION_SECRET>

Хранилище Git (Gitaly persistence)

gitaly.persistence.size задаёт размер PersistentVolumeClaim, который монтирует каждый под Gitaly для хранения Git-репозиториев. gitaly.persistence.storageClass выбирает StorageClass, из которого он создаётся.

gitaly:
  persistence:
    size: <VALUE>
    storageClass: <STORAGE_CLASS_NAME>

Реестр контейнеров

registry.enabled включает компонент реестра контейнеров. registry.storage.bucket задаёт бакет объектного хранилища, в котором хранятся слои образов, используя Secret подключения из global.appConfig.object_store.connection.secretName.

registry:
  enabled: true
  storage:
    bucket: <REGISTRY_BUCKET_NAME>

Pages

pages.enabled включает компонент Pages. pages.storage.bucket задаёт бакет объектного хранилища, в котором хранятся опубликованные сайты.

pages:
  enabled: false
  storage:
    bucket: <PAGES_BUCKET_NAME>

SMTP

global.smtp.enabled включает отправку уведомлений по электронной почте. global.smtp.address и global.smtp.port задают адрес сервера SMTP. global.smtp.credentialsSecret задаёт имя Secret с именем пользователя и паролем.

global:
  smtp:
    enabled: true
    address: <SMTP_HOST>
    port: 587
    credentialsSecret: <SMTP_CREDENTIALS_SECRET>