История изменений (Changelog) 7.0.9728
Ниже приведен список измененных файлов и подробным описанием изменений в каждом из них.
Файл .env
| Тип изменения | Ключ | Описание |
|---|---|---|
| + Добавлено | KAFKA_DOMAIN | Доменное имя для внешнего доступа к Kafka UI через Nginx. |
| + Добавлено | KAFKA_UI_CERT_FILE, KAFKA_UI_CERT_KEY_FILE, KAFKA_UI_CERT_KEY_PASS_FILE | Пути к TLS-сертификату, ключу и файлу пароля ключа для публикации Kafka UI по HTTPS. |
| + Добавлено | REDIS_DOMAIN | Доменное имя для внешнего доступа к Redis UI через Nginx. |
| + Добавлено | REDIS_UI_CERT_FILE, REDIS_UI_CERT_KEY_FILE, REDIS_UI_CERT_KEY_PASS_FILE | Пути к TLS-сертификату, ключу и файлу пароля ключа для публикации Redis UI по HTTPS. |
| + Добавлено | OPENSEARCH_DASHBOARDS_DOMAIN | Доменное имя для внешнего доступа к OpenSearch Dashboards через Nginx. |
| + Добавлено | OPENSEARCH_DASHBOARDS_CERT_FILE, OPENSEARCH_DASHBOARDS_CERT_KEY_FILE, OPENSEARCH_DASHBOARDS_CERT_KEY_PASS_FILE | Пути к TLS-сертификату, ключу и файлу пароля ключа для публикации OpenSearch Dashboards по HTTPS. |
| * Изменено | POSTGRES_BS_BACKEND_AUTH_METHOD | Значение по умолчанию изменено с password на scram-sha-256. |
| * Изменено | KAFKA_CFG_ADVERTISED_LISTENERS | Добавлен поясняющий комментарий: указать IP машины — значение переменной HOST_IP. |
Файл docker-compose.yml
| Тип изменения | Сервис | Описание |
|---|---|---|
| + Добавлено | nginx | В секцию environment добавлены KAFKA_UI_SERVER_NAME, REDIS_UI_SERVER_NAME, OPENSEARCH_DASHBOARDS_SERVER_NAME и переменные путей к соответствующим сертификатам (KAFKA_UI_CERT_*, REDIS_UI_CERT_*, OPENSEARCH_DASHBOARDS_CERT_*). В depends_on добавлены redis-ui, kafka-ui, opensearch-dashboards. |
| + Добавлено | keycloak | Добавлена зависимость depends_on: redis: condition: service_healthy. Добавлено логирование через Fluentd: logging: driver: fluentd, options: fluentd-address, tag: keycloak, fluentd-async: true, fluentd-async-reconnect-interval: 5s. |
| + Добавлено | onlyoffice-documentserver | Добавлен extra_hosts: "${BS_DOMAIN}:${HOST_IP}". |
| * Изменено | nginx, fluentd, opensearch, opensearch-dashboards, kafka-ui, postgresql, redis, redisinsight | Обновлены образы с меньшим уровнем уязвимостей. |
| * Изменено | postgresql (bs-backend) | Хранение данных переведено с именованного volume BS_BACKEND-postgresql_data на bind-mount ./DockerCompose/Postgres/BS_BACKEND/data:/var/lib/postgresql/16/data. |
| * Изменено | keycloak-postgresql | Хранение данных переведено с именованного volume keycloak-postgresql_data на bind-mount ./DockerCompose/Postgres/KEYCLOAK/data:/var/lib/postgresql/16/data. |
| * Изменено | postgresql, keycloak-postgresql, onlyoffice-postgresql, redis и др. | Политика перезапуска изменена с restart: always на restart: unless-stopped. |
| * Изменено | postgresql, keycloak-postgresql, onlyoffice-postgresql | command изменена с ["postgres", "-c", "max_connections=300"] на ["-c", "max_connections=300"]. |
| x Удалено | — | Убрана строка version: "3.8" в начале файла — версия схемы compose больше не указывается. |
Файл appsettings.json
| Тип изменения | Секция | Ключ | Описание |
|---|---|---|---|
| * Изменено | Serilog:MinimumLevel:Override | Microsoft, System, Yarp | Уровень логирования смягчён с Error на Warning. |
| + Добавлено | Serilog:MinimumLevel:Override | RequestForwardingMiddleware | Уровень логирования для middleware перенаправления запросов. Значение: Warning. |
| + Добавлено | WebServer (LongOp) | AppPlatform.Web.FileUtils.GeneratePreviewAndPlainTextForAllStructuresLongOp | Операция генерации превью и plain-text для всех структур добавлена в список длительных (фоновых) операций. |
| + Добавлено | WebServer (LongOp) | AppPlatform.Web.FileUtils.GeneratePreviewAndPlainTextForStructureClassLongOp | Операция генерации превью и plain-text для класса структур добавлена в список длительных (фоновых) операций. |
| x Удалено | KafkaConsumer (Messages consumer) | group.id | Ключ group.id: messages_consumer удалён из настроек Kafka-консьюмера сообщений. |
| x Удалено | KafkaConsumer (Data changes consumer) | group.id | Ключ group.id: data_changes_consumer удалён из настроек Kafka-консьюмера изменений данных. |
Файл nginx.conf.template
| Тип изменения | Описание |
|---|---|
| + Добавлено | Добавлены upstream kafka-ui, upstream redis-ui, upstream opensearch-dashboards. |
| + Добавлено | Добавлены три новых server { … } блока — HTTPS-проксирование Kafka UI (${KAFKA_UI_SERVER_NAME}), Redis UI (${REDIS_UI_SERVER_NAME}) и OpenSearch Dashboards (${OPENSEARCH_DASHBOARDS_SERVER_NAME}) со своими сертификатами. |
| + Добавлено | В блоки location (bs-backend, /signin-oidc и др.) и на общем http-уровне добавлены директивы proxy_buffer_size 16k; proxy_buffers 4 16k; proxy_busy_buffers_size 16k;. |
Файл entrypoint.sh
| Тип изменения | Описание |
|---|---|
| + Добавлено | Добавлена обработка файла пароля ключа для Kafka UI, Redis UI и OpenSearch Dashboards (add_pass "/opt/certificates/kafka-ui" …, аналогично для redis-ui и opensearch-dashboards). |
| + Добавлено | Добавлены ${KAFKA_UI_SERVER_NAME}, ${REDIS_UI_SERVER_NAME}, ${OPENSEARCH_DASHBOARDS_SERVER_NAME} в список server-name, подставляемых в шаблон nginx.conf. |
| + Добавлено | Добавлены ${KAFKA_UI_CERT_FILE}, ${KAFKA_UI_CERT_KEY_FILE}, ${REDIS_UI_CERT_FILE}, ${REDIS_UI_CERT_KEY_FILE}, ${OPENSEARCH_DASHBOARDS_CERT_FILE}, ${OPENSEARCH_DASHBOARDS_CERT_KEY_FILE} в список переменных сертификатов, подставляемых в шаблон. |
Файл fluent.conf
| Тип изменения | Описание |
|---|---|
| + Добавлено | Добавлен <match bs-node-js> — отправка логов bs-node-js в OpenSearch с префиксом bs-node-js. |
| + Добавлено | Добавлен <match bs-license-server> — отправка логов сервера лицензий в OpenSearch с префиксом bs-license-server. |
| + Добавлено | Добавлен <match postgresql> — отправка логов postgresql в OpenSearch с префиксом postgresql. |
| + Добавлено | Добавлен <match keycloak-postgresql> — отправка логов keycloak-postgresql в OpenSearch с префиксом keycloak-postgresql. |
| + Добавлено | Добавлен <match redis> — отправка логов redis в OpenSearch с префиксом redis. |
| x Удалено | В блоке <match keycloak> удалена секция <buffer tag,time> (timekey 1m, timekey_wait 10s, flush_interval 10s). |
Скрипты установки и управления
| Тип изменения | Файл | Описание |
|---|---|---|
| + Добавлено | bs_setup.sh | Новый единый интерактивный установочный скрипт. Включает: приветствие и показ/подтверждение EULA, пошаговый ввод параметров (hostname, БД, сертификаты, LDAP), подтверждение введённых данных перед запуском, генерацию .env, генерацию CA и TLS-сертификатов для всех сервисов (включая Kafka UI/Redis UI/OpenSearch Dashboards), автопатчинг docker-compose.yml и appsettings.json под введённые параметры, автогенерацию /etc/hosts, разворачивание и восстановление БД, настройку realm Keycloak, настройку шаблонов и index-pattern'ов OpenSearch Dashboards, активацию лицензии, запуск стека и вывод итоговой инструкции в INSTALL.md. |
| + Добавлено | bs_menu.sh | Новое интерактивное меню администратора — предоставляет пункты для управления установленным стендом. |
| x Удалено | bs.sh | Скрипт управления жизненным циклом стенда (–start/–stop/–restart/–status) удалён как отдельный файл — соответствующая функциональность вошла в bs_setup.sh. |
| x Удалено | generate_cert.sh | Отдельный скрипт генерации CA/сертификатов удалён — функциональность перенесена внутрь bs_setup.sh (с расширением на Kafka UI/Redis UI/OpenSearch Dashboards). |
Файл EULA
| Тип изменения | Описание |
|---|---|
| * Изменено | Формат лицензионного соглашения изменён с RTF на Markdown. Текст соглашения сохранён. |
| + Добавлено | Показ и подтверждение EULA встроены непосредственно в установочный скрипт bs_setup.sh (функции _show_eula, _eula_validate) — раньше файл существовал отдельно, без встроенной логики подтверждения. |
Новые файлы
| Тип изменения | Файл | Описание |
|---|---|---|
| + Добавлено | INSTALL.md | Автогенерируемый по итогам установки отчёт: доменные имена всех сервисов (BS, Keycloak, OnlyOffice, Kafka UI, Redis UI, OpenSearch Dashboards), а также указание, где хранятся сгенерированные пароли (.env). Формируется функцией _save_install_summary. |
| + Добавлено | logs-cleanup.sh | Скрипт очистки логов по возрасту (по умолчанию 90 дней): усечение Docker json-логов больше 100 МБ, удаление устаревших индексов OpenSearch, очистка логов внутри контейнеров Postgres/Kafka/bs-backend/bs-node-js/bs-license-server и системных логов хоста. |
Сертификаты
| Тип изменения | Описание |
|---|---|
| + Добавлено | Добавлены подкаталоги kafka-ui/, redis-ui/, opensearch-dashboards/ — под сертификаты для новых внешних веб-интерфейсов (см. раздел «Файл .env» и «Файл nginx.conf.template»). |