2026-02-12 08:41:19 +00:00
2026-02-12 11:34:23 +03:00
2026-02-12 11:37:14 +03:00
2026-02-12 11:37:14 +03:00

HRBox Helm Chart

Helm-чарт для развертывания приложения HRBox в Kubernetes.


Быстрый старт

1. Создайте секрет для доступа к Docker-реестру

Для скачивания приватного Docker-образа создайте Kubernetes Secret с помощью предоставленного JSON-ключа:

kubectl create secret docker-registry regsecret \
  --docker-username=json_key \
  --docker-password="$(cat key-puller.json)" \
  --docker-server=cr.yandex \
  --docker-email=not@used.com

2. Создайте TLS-секрет с сертификатом для домена

kubectl create secret tls hrbox-tls --cert=cert.pem --key=key.pem

3. Сгенерируйте секретные ключи приложения

Для обеспечения безопасности необходимо сгенерировать и указать в values.yaml следующие ключи:

  • cookieValidationKey — 32 байта в hex (например: openssl rand -hex 16)
  • encryptionKey — 64 байта в base64 (например: openssl rand -base64 48)
  • servicesInternalSecret — 64 байта в base64 (например: openssl rand -base64 48)
  • chatbox.wrappingKey — 32 символа в hex (например: openssl rand -hex 16)

Эти ключи используются для защиты cookie, шифрования данных, межсервисной коммуникации и шифрования чатов.

4. Заполните обязательные параметры в values.yaml

Обязательно укажите в конфигурации:

  • Параметры подключения к базе данных PostgreSQL (app.postgres.host, port, database, user, password).
  • Настройки S3-совместимого хранилища (app.s3.endpoint, bucket, key, secret).
  • SMTP-настройки для отправки почты (app.smtp.host, port, user, password, from, fromHost).
  • Домен для приложения (app.defaultTenantHostname) и Ingress (ingress.host).
  • Имя TLS-секрета для HTTPS (ingress.tls.secretName), созданного на шаге 2.
  • Ключ для hrbox hub (предоставляется сотрудниками hrbox)

Прочие настройки и пример values.yml с подробным описанием ключей вы можете найти тут

5. Установите или обновите Helm-релиз

helm upgrade --install hrbox . -f values.yaml

6. Дождитесь завершения миграций

Job hrbox-migrate-xxxxx должна завершиться

7. При первом развертывании - создайте суперпользователя

kubectl get pods

NAME                               READY   STATUS     RESTARTS      AGE
...
hrbox-worker-7898b77b85-5ppwm      1/1     Running    0             53s
hrbox-worker-7898b77b85-9fnkc      1/1     Running    0             53s

kubectl exec -it hrbox-worker-7898b77b85-5ppwm bash

php yii user/create-admin youremail@hrbox.io --tenant-id=1
S
Description
Helm чарт для деплоя on-premise
Readme
168 KiB
Languages
Go Template 100%