Посібник зі встановлення digna Release 2026.06 на Linux¶
Випуск: 2026.06
Останнє оновлення: 5 вересня 2026 р.
Зміст¶
- Вступ
- Системні вимоги
- Підготовка до встановлення
- Налаштування сервера PostgreSQL
- Налаштування веб‑сервера
- Початкове встановлення
- Налаштування серверної частини
- Налаштування панелі
- Запуск digna як служби systemd
- Оновлення до нового випуску
Вступ¶
Про digna¶
digna — це комплексна платформа на основі AI, призначена для оптимізації управління якістю даних у різних середовищах даних, таких як сховища даних (warehouses), озера даних (lakes) і lakehouses. Побудована з розрахунком на високу масштабованість та адаптивність, digna вирішує сучасні завдання роботи з даними завдяки автоматизації, моніторингу в реальному часі та виявленню аномалій.
digna складається з двох основних компонентів:
- digna: ядро застосунку, відповідальне за обробку даних і виконання перевірок якості. Воно поєднує серверну частину та інтерфейс командного рядка в одному виконуваному файлі, замінюючи окремі програми
dignabackendіdignacliз попередніх випусків. - dignadashboard: веб‑інтерфейс, розміщений на веб‑сервері, що забезпечує зручний спосіб взаємодії з платформою digna та візуалізації метрик якості даних.
Що нового в Release 2026.06¶
Цей випуск вбудовує можливості спостереження за даними безпосередньо у ваш код, що дає змогу розробникам контролювати якість даних на джерелі. Повні відомості див. у примітках до випуску.
Шукаєте Windows або macOS?¶
Цей посібник охоплює Linux. Для інших платформ див. Посібник зі встановлення на Windows або Посібник зі встановлення на macOS.
Які дистрибутиви охоплює цей посібник?¶
Інструкції написано для двох найпоширеніших сімейств серверних дистрибутивів. Там, де вони відрізняються, наведено обидві команди:
- Сімейство Debian — Debian, Ubuntu. Менеджер пакетів:
apt. - Сімейство RHEL — Red Hat Enterprise Linux, Rocky Linux, AlmaLinux, Fedora. Менеджер пакетів:
dnf.
Підійде будь-який сучасний дистрибутив із systemd; змінюються лише назви пакетів і кілька шляхів конфігурації.
Системні вимоги¶
Перш ніж почати встановлення, переконайтеся, що ваша система відповідає таким мінімальним вимогам:
| Вимога | Специфікація |
|---|---|
| Операційна система | Ubuntu 22.04 LTS або новіша, Debian 12 або новіша, RHEL 9 / Rocky 9 / AlmaLinux 9 або новіша |
| Архітектура | x86_64 (amd64) або arm64 |
| Система ініціалізації | systemd |
| Пам'ять (мінімальна конфігурація) | 16 GB RAM |
| Дисковий простір | 10 GB вільного місця |
| База даних | PostgreSQL Server 12 або новіший |
| Веб‑сервер | nginx, Apache httpd або аналог |
Варіанти встановлення бази даних¶
Якщо PostgreSQL уже встановлено: Ви можете додати нову базу даних для digna до наявного сервера PostgreSQL.
Якщо PostgreSQL встановлюється на тій самій машині, що й digna:
Рекомендовані характеристики
- Пам'ять: 32 GB RAM (замість 16 GB)
- Дисковий простір: 50 GB вільного місця (замість 10 GB)
Ці підвищені характеристики розраховані на одночасну роботу digna та бази даних PostgreSQL.
Перевірка дистрибутива та архітектури¶
Кілька команд у цьому посібнику відрізняються для сімейств Debian і RHEL. Щоб перевірити, яке у вас, виконайте:
ID=ubuntuабоID=debian— використовуйте командиapt.ID=rhel,rocky,almalinuxабоfedora— використовуйте командиdnf.x86_64абоaarch64— архітектура інсталяційного пакета, який вам потрібен.
Підготовка до встановлення¶
Перед встановленням digna переконайтеся, що наявні дві ключові передумови:
- Сервер PostgreSQL – для зберігання обчислених метрик і даних про продуктивність
- Веб‑сервер – для розміщення панелі digna (digna Dashboard)
Якщо ці компоненти ще не налаштовано, скористайтеся наведеними нижче розділами, щоб установити та налаштувати їх.
Оновлення індексу пакетів¶
Перш ніж щось установлювати, оновіть списки пакетів:
Примітка
У всьому цьому посібнику перша команда з пари призначена для сімейства Debian, а друга — для сімейства RHEL. Виконуйте лише ту, що відповідає вашій системі.
Налаштування сервера PostgreSQL¶
Якщо у вас уже є PostgreSQL¶
Якщо PostgreSQL уже встановлено й запущено на вашій локальній машині або ви використовуєте керований віддалений сервер PostgreSQL, можете перейти до наступного розділу.
Встановлення PostgreSQL¶
Крок 1: Встановіть пакет сервера¶
Порада
Пакети дистрибутива можуть відставати від поточного випуску PostgreSQL. Якщо вам потрібна конкретна новіша версія, використовуйте натомість офіційний репозиторій PostgreSQL для apt або yum.
Крок 2: Ініціалізуйте кластер бази даних¶
У сімействі Debian пакет автоматично створює та запускає кластер — переходьте до наступного кроку.
У сімействі RHEL кластер потрібно створити явно:
Крок 3: Запустіть службу й увімкніть автозапуск¶
Ця команда одразу запускає PostgreSQL і налаштовує його автоматичний запуск під час завантаження системи.
Крок 4: Перевірте встановлення¶
Ви повинні побачити версію PostgreSQL і службу в стані active (running).
Крок 5: Підключіться до сервера¶
Пакет PostgreSQL для Linux створює системний обліковий запис postgres, якому належить кластер. Підключайтеся через нього:
Примітка — тут Linux відрізняється від Windows
Інсталятор для Windows під час налаштування пропонує задати пароль суперкористувача postgres. Пакети для Linux цього не роблять. Натомість локальні підключення автентифікуються за допомогою peer‑автентифікації: користувачеві операційної системи postgres дозволено підключатися як користувач бази даних postgres без пароля.
Саме тому команда вище використовує sudo -u postgres. Серверна частина digna підключається через TCP з ім'ям користувача та паролем, тож ви створите окремого користувача digna в розділі Початкове встановлення.
Крок 6: Перевірте порт¶
Стандартний порт PostgreSQL — 5432. Щоб перевірити, який порт прослуховує ваш сервер:
Запишіть це значення — воно знадобиться під час налаштування серверної частини digna.
Крок 7: Увімкніть автентифікацію за паролем для користувача digna¶
digna підключається до PostgreSQL через TCP як digna_user, що потребує автентифікації за паролем, а не peer‑автентифікації. Переконайтеся, що ваш pg_hba.conf це дозволяє.
Знайдіть файл:
Відкрийте його в редакторі й переконайтеся, що рядки для локального TCP використовують scram-sha-256 (або md5 на старіших серверах), а не ident:
# TYPE DATABASE USER ADDRESS METHOD
host all all 127.0.0.1/32 scram-sha-256
host all all ::1/128 scram-sha-256
Після будь-яких змін перезавантажте конфігурацію PostgreSQL:
Важливо
Якщо digna повідомляє FATAL: Ident authentication failed for user "digna_user", причина саме в цьому налаштуванні.
Крок 8: Якщо PostgreSQL працює на іншій машині¶
Щоб приймати підключення з іншого хоста, задайте listen_addresses у postgresql.conf і додайте відповідний рядок host для вашої мережі в pg_hba.conf:
Потім відкрийте порт у брандмауері та перезапустіть службу:
Налаштування веб‑сервера¶
digna потребує веб‑сервера для розміщення панелі. Виберіть один із таких варіантів:
- nginx — легкий і рекомендований
- Apache httpd — широко поширена альтернатива
Потрібно встановити й налаштувати лише один із цих серверів.
Обидва розділи налаштовують дві речі, від яких залежить панель:
- Резервний маршрут для односторінкового застосунку (SPA fallback), щоб оновлення URL панелі не повертало 404
- Тип MIME для
.md, щоб файли Markdown віддавалися коректно
Налаштування nginx¶
Огляд¶
nginx — легкий високопродуктивний веб‑сервер, що добре підходить для віддавання статичної панелі digna.
Встановлення¶
Запуск nginx¶
Перевірте встановлення¶
- Відкрийте браузер
- Перейдіть за адресою
http://localhost - Ви повинні побачити сторінку привітання nginx
Відкриття брандмауера¶
Якщо до сервера звертаються з інших машин, дозвольте трафік HTTP:
Налаштування сайту для панелі¶
В обох сімействах дистрибутивів nginx підключає кожен файл зі свого каталогу conf.d. Створіть там окремий файл конфігурації для digna:
Вставте наведене нижче, замінивши /opt/digna/dashboard фактичним шляхом до розпакованої теки dashboard:
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /opt/digna/dashboard;
index index.html;
# Serve Markdown files with the correct MIME type.
types {
text/markdown md;
}
# Single-page-application fallback: unknown paths return index.html
# instead of a 404, so dashboard routes survive a browser refresh.
location / {
try_files $uri $uri/ /index.html;
}
}
Важливо
Без директиви try_files перезавантаження будь-якої сторінки панелі, окрім кореневого URL, повертає 404. Це відповідник модуля URL Rewrite, якого потребує IIS у Windows.
Вимкніть сайт за замовчуванням¶
Лише один блок server може бути default_server для порту. У сімействі Debian видаліть стандартний сайт із пакета, щоб він не конфліктував:
У сімействі RHEL закоментуйте або видаліть блок server { ... } у /etc/nginx/nginx.conf.
Застосуйте конфігурацію¶
Перевірте конфігурацію на синтаксичні помилки, а потім перезавантажте nginx:
Налаштування Apache httpd¶
Огляд¶
Apache httpd доступний у стандартних репозиторіях кожного підтримуваного дистрибутива. У сімействі Debian пакет називається apache2, а в сімействі RHEL — httpd.
Встановлення¶
Запуск Apache¶
Перевірте встановлення¶
- Відкрийте браузер
- Перейдіть за адресою
http://localhost - Ви повинні побачити стандартну сторінку Apache вашого дистрибутива
Обов'язково: увімкніть mod_rewrite¶
Панель потребує перезапису URL.
У сімействі Debian увімкніть модуль і перезапустіть сервер:
У сімействі RHEL mod_rewrite завантажується за замовчуванням. Переконайтеся в цьому:
Обов'язково: дозвольте перевизначення через .htaccess¶
Відкрийте файл конфігурації для кореневого каталогу документів:
Знайдіть блок <Directory>, що охоплює кореневий каталог документів (/var/www/html в обох сімействах), і змініть:
на:
Обов'язково: тип MIME для файлів Markdown¶
У тому самому файлі додайте такий рядок, щоб файли Markdown віддавалися коректно:
Важливо
Без цього налаштування файли .md можуть віддаватися некоректно.
Застосуйте конфігурацію¶
Перевірте конфігурацію на синтаксичні помилки, а потім перезапустіть Apache:
Початкове встановлення¶
Крок 1: Налаштуйте репозиторій digna¶
Репозиторій digna зберігає всі метрики, обчислені digna. Він слугує центральною базою даних для аналітичних даних і даних про продуктивність.
Створіть схему репозиторію та користувача¶
Відкрийте свій клієнт PostgreSQL (psql, pgAdmin або подібний) і виконайте такі SQL‑команди:
CREATE SCHEMA <digna_repo_schema>;
CREATE USER <digna_repo_user> WITH PASSWORD '<digna_repo_password>';
GRANT ALL PRIVILEGES ON SCHEMA <digna_repo_schema> TO <digna_repo_user>;
Замініть такі заповнювачі:
<digna_repo_schema>— бажана назва схеми (наприклад,dignarepo)<digna_repo_user>— бажане ім'я користувача (наприклад,digna_user)<digna_repo_password>— надійний пароль для цього користувача
Приклад:
CREATE SCHEMA dignarepo;
CREATE USER digna_user WITH PASSWORD 'YourSecurePassword123!';
GRANT ALL PRIVILEGES ON SCHEMA dignarepo TO digna_user;
Щоб виконати їх з оболонки за один крок:
Потім вставте оператори в запрошенні postgres=# і введіть \q, щоб вийти.
Найкраща практика
Використовуйте надійні, складні паролі для користувачів бази даних. Уникайте облікових даних, які легко вгадати.
Крок 2: Розпакуйте інсталяційний пакет digna¶
- Знайдіть наданий вам ZIP‑файл інсталяції digna
- Розпакуйте його в бажане місце встановлення — наприклад,
/opt/digna - Після розпакування ви побачите такі елементи:
dashboard/— веб‑інтерфейс панеліdigna— основний виконуваний файл (серверна частина та CLI разом)
Файли конфігурації та ліцензії не входять до пакета
Ні config.toml, ні dashboard/dashboard_config.toml не постачаються разом зі встановленням — ви створюєте обидва файли самостійно, у розділах Налаштування серверної частини і Налаштування панелі. license.toml також не постачається; digna надає його окремо, як описано в кроці 3.
Щоб розпакувати з оболонки:
Примітка
Якщо unzip не встановлено, додайте його командою sudo apt install -y unzip або sudo dnf install -y unzip.
Зробіть файл виконуваним¶
Залежно від того, як передавався архів, біт виконання може не зберегтися після розпакування. Задайте його явно:
Створіть службовий обліковий запис¶
Для production‑розгортань рекомендується запускати серверну частину від імені окремого непривілейованого користувача:
sudo useradd --system --no-create-home --shell /usr/sbin/nologin digna
sudo chown -R digna:digna /opt/digna
Примітка
У сімействі RHEL відповідний шлях до оболонки — /sbin/nologin.
Крок 3: Встановіть файл ліцензії¶
Важливо
Файл ліцензії не входить до інсталяційного пакета й надається digna окремо.
- Знайдіть наданий вам файл
license.toml - Скопіюйте його в кореневий каталог встановлення digna (там, де розташовані
config.tomlі виконуваний файлdigna)
Чому це важливо: Файл ліцензії містить відомості про клієнта, дату закінчення терміну дії ліцензії та цифровий підпис. Не змінюйте цей файл — будь‑які зміни зроблять його недійсним.
Структура каталогу після налаштування:
/opt/digna/
├── config.toml (configuration file)
├── license.toml (YOUR LICENSE FILE - copy here)
├── digna (main executable)
├── bin/ (service management scripts)
└── dashboard/ (web interface)
└── (dashboard files)
Налаштування серверної частини¶
Крок 1: Створіть і відредагуйте файл конфігурації¶
Файл config_template.toml постачається у вашому каталозі встановлення digna. Потрібно лише перейменувати його на config.toml.
Розташування: /opt/digna/config.toml
Відкрийте config.toml у текстовому редакторі й налаштуйте кожен із наведених нижче розділів.
Розділ [app]¶
Цей розділ налаштовує параметри серверного застосунку digna:
[app]
digna_APP_CORS_ALLOW_ORIGINS = ["http://localhost:5173"]
digna_APP_CORS_ALLOW_CREDENTIALS = true
digna_APP_CORS_ALLOW_METHODS = ["*"]
digna_APP_CORS_ALLOW_HEADERS = ["*"]
| Параметр | Значення | Примітки |
|---|---|---|
digna_APP_CORS_ALLOW_ORIGINS | URL frontend | Якщо панель розміщено на іншому сервері, додайте її URL |
digna_APP_CORS_ALLOW_CREDENTIALS | true | Потрібно для CORS з обліковими даними |
digna_APP_CORS_ALLOW_METHODS | ["*"] | Дозволити всі методи HTTP |
digna_APP_CORS_ALLOW_HEADERS | ["*"] | Дозволити всі заголовки |
Примітка
Якщо ви віддаєте панель через nginx або Apache на стандартному порту HTTP, дозволити потрібно джерело http://localhost — або публічний URL сервера, якщо до панелі звертаються з інших машин.
Розділ [repo]¶
Цей розділ налаштовує підключення до бази даних PostgreSQL:
[repo]
digna_REPO_HOST = "localhost"
digna_REPO_PORT = 5432
digna_REPO_DB = "postgres"
digna_REPO_SCHEMA = "dignarepo"
digna_REPO_USER = "digna_user"
digna_REPO_PASSWORD = "YourSecurePassword123!"
| Параметр | Значення | Примітки |
|---|---|---|
digna_REPO_HOST | localhost або IP | Ім'я хоста / IP сервера PostgreSQL |
digna_REPO_PORT | 5432 (за замовчуванням) | Порт PostgreSQL |
digna_REPO_DB | postgres | Назва бази даних |
digna_REPO_SCHEMA | dignarepo | Схема, створена раніше |
digna_REPO_USER | digna_user | Користувач, створений під час налаштування PostgreSQL |
digna_REPO_PASSWORD | Ваш пароль | Пароль, заданий під час створення схеми |
Найкраща практика
config.toml містить пароль до бази даних у відкритому вигляді. Обмежте права доступу до нього, щоб читати його міг лише службовий обліковий запис:
Розділ [base]¶
Цей розділ містить параметри безпеки та cookie:
[base]
DIGNA_FERNET_KEY = "DU4a0yJ-OqvbKCL4hNQn_CsknH-V1vWmHZqBUl-AY44="
digna_COOKIE_DOMAIN = "localhost"
digna_COOKIE_PATH = "/"
digna_COOKIE_SECURE = false
digna_COOKIE_HTTPONLY = true
digna_COOKIE_SAME_SITE = "lax"
digna_TOKEN_EXPIRES_IN = 86400
digna_MAX_WORKERS = 4
DIGNA_SCHEDULER_MAX_DELAY = 100
DIGNA_CLEANUP_TIME = "12:00"
| Параметр | Значення | Примітки |
|---|---|---|
DIGNA_FERNET_KEY | Ключ шифрування | Використовується для шифрування токенів і cookie (можливий ключ за замовчуванням) |
digna_COOKIE_DOMAIN | localhost | Має відповідати домену frontend |
digna_COOKIE_SECURE | false (локально) / true (production) | Використовуйте true для з'єднань HTTPS |
digna_COOKIE_HTTPONLY | true | Завжди ввімкнено з міркувань безпеки |
digna_COOKIE_SAME_SITE | lax | Запобігає атакам CSRF |
digna_TOKEN_EXPIRES_IN | 86400 (24 години) | Тайм‑аут сесії в секундах |
digna_MAX_WORKERS | Кількість ядер CPU - 1 | Кількість паралельних завдань інспекції |
DIGNA_SCHEDULER_MAX_DELAY | 100 | Максимальна затримка в секундах, яку планувальник може додати перед запуском завдання, термін якого настав |
DIGNA_CLEANUP_TIME | "12:00" | Час доби (24-годинний формат HH:MM), коли починається щоденне очищення |
Порада
Щоб дізнатися кількість ядер CPU, доступних на вашому сервері, виконайте nproc.
Розділ [encryption]¶
Цей розділ містить ключ, яким шифруються конфіденційні значення, що зберігаються в репозиторії. Він обов'язковий — config check повідомляє про розділ [encryption] як FAILED, якщо ключа немає.
| Параметр | Значення | Примітки |
|---|---|---|
DIGNA_ENCRYPTION_KEY | Ключ у кодуванні Base64 | Шифрує конфіденційні значення, що зберігаються в репозиторії digna |
Захистіть config.toml
Цей ключ — фіксоване значення, однакове в усіх установленнях digna, і саме він розшифровує конфіденційні значення у вашому репозиторії. Обмежте доступ до config.toml обліковим записом, під яким працює digna, тримайте файл поза системою контролю версій і спільними дисками та виключіть його з будь-якої резервної копії, що зберігається менш захищено, ніж сам репозиторій.
Розділ [logging]¶
Цей розділ налаштовує поведінку журналювання:
| Параметр | Значення | Примітки |
|---|---|---|
digna_LOGGING_MODE | INFO або DEBUG | INFO — для production, DEBUG — для усунення несправностей |
digna_LOGGING_BACKUP_COUNT | 10 | Кількість щоденних резервних копій журналів, які зберігаються |
Крок 2: Перевірте конфігурацію¶
Перед ініціалізацією репозиторію переконайтеся, що config.toml повний і правильно сформований. У каталозі встановлення digna виконайте:
Кожен розділ перевіряється окремо, тож одна помилка не приховує стан решти:
Configuration validation report (source: config.toml):
- App config: OK
- Repository config: OK
- Base config: OK
- Logging config: OK
- Encryption config: OK
- OIDC config(s): OK
Overall: OK
Виправте все, про що повідомлено як FAILED, і виконайте команду ще раз, перш ніж продовжувати. Повний перелік параметрів наведено в довіднику CLI.
Крок 3: Ініціалізуйте репозиторій¶
- Відкрийте термінал
- Перейдіть до каталогу встановлення digna (там, де розташовані
config.tomlі виконуваний файлdigna) - Запустіть перевірку підключення:
Ви повинні побачити підтвердження, що з'єднання встановлено (сам репозиторій ще не ініціалізовано).
Примітка
У Linux поточний каталог не входить до PATH, тож виконуваний файл викликається як ./digna, а не digna. Щоб скрізь використовувати коротшу форму, додайте символьне посилання:
Крок 4: Встановіть схему репозиторію¶
У тому самому каталозі виконайте:
Ця команда встановлює необхідні таблиці та схему у вашій базі даних PostgreSQL.
Крок 5: Створіть користувача‑адміністратора¶
Користувач‑адміністратор створюється безпосередньо у схемі репозиторію, тож сервер поки що не мусить працювати. У каталозі встановлення digna виконайте:
Приклад:
Це створює користувача з адресою електронної пошти admin@example.com і повними адміністративними правами.
Порада
Беріть пароль в одинарні лапки. bash і zsh обробляють такі символи, як !, $ і *, по-особливому, і пароль без лапок, що містить їх, не буде передано так, як його введено.
Найкраща практика
Використовуйте надійний пароль, що поєднує великі й малі літери, цифри та спеціальні символи.
Крок 6: Запустіть сервер digna¶
У каталозі встановлення digna запустіть сервер командою:
Параметри: - --address — ім'я хоста / IP сервера - --port — порт сервера
Ви повинні побачити повідомлення про запуск, що підтверджують роботу сервера:
INFO: Started server process [1234]
INFO: Waiting for application startup.
INFO: Application startup complete
INFO: Uvicorn running on http://localhost:8082
Порада
Якщо панель розміщено на іншій машині, ніж серверну частину, відкрийте в брандмауері також порт API:
Сервер займає термінал
serve виконується на передньому плані й працює, доки ви не зупините його комбінацією Ctrl+C. Залиште його працювати, доки завершуєте налаштування; щоб натомість запускати його автоматично під час завантаження системи, див. Запуск digna як служби systemd.
Налаштування панелі¶
Крок 1: Розгорніть панель на веб‑сервері¶
Панель digna зчитує власну конфігурацію з dashboard/dashboard_config.toml. Цей файл не постачається разом зі встановленням — ви створюєте його в каталозі dashboard/ поруч із файлами панелі.
Його вміст описано в розділі Single Sign-On, і саме там цей файл і потрібен: він містить варіанти входу, які пропонує панель, а для розгортань із кількома екземплярами — підключення до серверної частини.
Виберіть свій веб‑сервер і виконайте відповідні кроки розгортання.
Розгортання в nginx¶
Якщо ви виконали кроки розділу Налаштування nginx, блок server уже вказує на вашу теку dashboard, і нічого копіювати не потрібно.
- Перевірте шлях
- Відкрийте
/etc/nginx/conf.d/digna.conf -
Переконайтеся, що
rootвказує на розпаковану текуdashboard -
Переконайтеся, що теку можна читати
-
Перезавантажте nginx
-
Перевірте встановлення
- Відкрийте браузер
- Перейдіть за адресою
http://localhost(або за налаштованим вами URL) - Ви повинні побачити сторінку входу панелі digna
Розгортання в Apache httpd¶
-
Скопіюйте панель до кореневого каталогу документів
-
Додайте правила перезапису
Створіть файл .htaccess у розгорнутій теці, щоб маршрути панелі зберігалися після оновлення сторінки в браузері:
Вставте наведене нижче:
RewriteEngine On
RewriteBase /digna/
# Serve existing files and directories as-is.
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
# Everything else falls back to the single-page application entry point.
RewriteRule ^ index.html [L]
-
Перезапустіть Apache
-
Відкрийте панель
- Відкрийте браузер
- Перейдіть за адресою
http://localhost/digna - Ви повинні побачити сторінку входу панелі digna
Крок 2: SELinux (лише сімейство RHEL)¶
У RHEL, Rocky, AlmaLinux і Fedora SELinux за замовчуванням працює в примусовому режимі й блокуватиме веб‑серверу читання файлів поза очікуваними розташуваннями. Перевірте, чи він активний:
Якщо результат — Enforcing і ви віддаєте панель з /opt/digna/dashboard, позначте каталог міткою, щоб веб‑сервер міг його читати:
sudo semanage fcontext -a -t httpd_sys_content_t "/opt/digna/dashboard(/.*)?"
sudo restorecon -Rv /opt/digna/dashboard
Примітка
Якщо semanage не знайдено, встановіть його командою sudo dnf install -y policycoreutils-python-utils.
Важливо
Якщо панель на щойно налаштованому сервері RHEL повертає 403 Forbidden, це майже завжди проблема міток SELinux, а не прав доступу до файлів. Перевірте це командою sudo ausearch -m avc -ts recent.
Запуск digna як служби systemd¶
Навіщо запускати digna як службу?¶
Запуск серверної частини digna як служби systemd гарантує, що вона:
- Автоматично запускається під час завантаження машини
- Працює у фоновому режимі без відкритого вікна термінала
- Автоматично перезапускається в разі збою
- Керується через
systemctl— стандартний менеджер служб Linux
Файли керування службою¶
Усі необхідні файли розташовані в каталозі встановлення digna, у підкаталозі bin/
Доступні такі скрипти оболонки:
install_service.sh— реєструє digna в systemduninstall_service.sh— скасовує реєстрацію службиstart_service.sh— запускає зареєстровану службуstop_service.sh— зупиняє запущену службу
Потрібні права root
Усі скрипти потрібно виконувати через sudo, оскільки реєстрація служби, що запускається під час завантаження системи, записує unit‑файл до /etc/systemd/system.
Як зробити скрипти виконуваними¶
Розпакування може не зберегти біт виконання. Перед першим використанням виконайте:
Встановлення служби¶
-
Відкрийте термінал
-
Перейдіть до теки bin
-
Запустіть скрипт встановлення
Тепер сервер digna зареєстровано в systemd з увімкненим автоматичним запуском. Служба не запускається одразу — щоб запустити її, див. наступний розділ.
Запуск і зупинка служби¶
Щоб запустити службу¶
- Відкрийте термінал
- Перейдіть до
/opt/digna/bin - Виконайте:
Щоб зупинити службу¶
- Відкрийте термінал
- Перейдіть до
/opt/digna/bin - Виконайте:
Порада
Завжди зупиняйте службу перед оновленням файлів застосунку.
Керування службою через systemctl¶
Після реєстрації службою також можна керувати стандартними командами systemd з будь-якого каталогу:
sudo systemctl start digna
sudo systemctl stop digna
sudo systemctl restart digna
sudo systemctl status digna
Перевірка служби¶
Щоб переконатися, що службу зареєстровано й вона працює:
enabled означає, що служба запускається під час завантаження системи; active означає, що вона працює зараз.
Перегляд журналів служби¶
systemd перехоплює все, що серверна частина виводить на консоль. Щоб прочитати це:
Щоб стежити за журналом наживо під час відтворення проблеми:
Порада
Це найшвидший спосіб діагностувати службу, яка запускається й одразу зупиняється. Тут з'являються повідомлення про збій підключення до репозиторію або відсутній license.toml.
Перенесення служби до нового каталогу¶
Unit‑файл зберігає абсолютний шлях до виконуваного файлу, тож перенесення встановлення потребує повторної реєстрації служби:
-
Видаліть поточну службу
-
Перемістіть файли застосунку
-
Повторно встановіть службу
-
Запустіть службу
Видалення служби¶
-
Зупиніть запущену службу
-
Видаліть службу
Реєстрацію сервера digna в systemd скасовано.
Оновлення до нового випуску¶
Перед оновленням¶
Спершу перевірте всі підключення до баз даних
Починаючи з Release 2026.06, digna звертається до кожної технології-джерела через ODBC. Попередні випуски пропонували вибір між окремим драйвером для кожної технології та ODBC, що задавався перемикачем Use ODBC. Команда digna вирішила спиратися лише на ODBC, бо єдиний стандартний інтерфейс дає вам більше, ніж набір спеціально написаних драйверів:
- Автентифікація — автентифікація є частиною ODBC, тож підключення може використовувати все, що підтримує його драйвер: паролі, токени та PAT, Kerberos і Active Directory, MFA та єдиний вхід через браузер, хмарні ідентичності, клієнтські сертифікати й TLS. Нові методи з'являються разом з оновленням драйвера, а не після очікування випуску digna.
- Драйвери, які підтримують виробники баз даних — власний драйвер виробника стежить за новими версіями сервера та виправленнями безпеки, і ви можете оновлювати його за власним графіком, незалежно від digna.
- Єдиний спосіб налаштувати все — кожна технологія — це список властивостей «ключ/значення» з тим самим інтерфейсом, тим самим шифруванням конфіденційних значень і тим самим усуненням несправностей, замість різного набору полів для кожного джерела.
- Тонке налаштування та охоплення — параметри рівня драйвера, такі як тайм-аути, налаштування TLS, проксі та розміри вибірки, доступні для кожного джерела, а підключити можна будь-яку технологію із сумісним драйвером ODBC, зокрема ті, для яких digna не публікує окремого посібника.
На практиці це означає, що перемикача Use ODBC та окремих полів хоста, порту, бази даних, користувача й пароля більше немає. Кожне підключення, яке ще не використовує ODBC, має бути переведене на ODBC — автоматичного перетворення немає, тож сплануйте це до оновлення:
- Перегляньте кожне підключення до бази даних, визначене у вашому встановленні, і складіть список тих, що ще не використовують ODBC — кожне з них доведеться налаштувати заново.
- Встановіть відповідний драйвер ODBC на хості digna — підключення відкриваються із сервера, на якому працює серверна частина digna, а не з браузера. Див. Встановлення драйвера ODBC на хості digna.
- Підготуйте властивості ODBC для кожного зачепленого підключення. Посібники за технологіями наводять для кожного джерела перевірений набір властивостей.
Після оновлення переведіть кожне зачеплене підключення на ODBC і перевірте його з панелі — див. Створення підключення до бази даних та Перевірка підключення.
Підключення Databricks Legacy
Конектор Databricks Legacy вилучено в цьому випуску. Переведіть такі підключення на конектор Databricks.
Створення резервної копії репозиторію digna обов'язкове
Перед оновленням digna створіть резервну копію свого репозиторію (PostgreSQL), щоб захиститися від втрати даних. Резервна копія дає змогу відновитися, якщо під час оновлення виникнуть непередбачені проблеми.
Щоб створити резервну копію з оболонки:
Процес оновлення¶
Крок 1: Зупиніть службу digna¶
Якщо digna працює як служба systemd, спершу зупиніть її:
Якщо digna працює на передньому плані, натисніть Ctrl + C у вікні її термінала.
Крок 2: Створіть резервну копію поточного встановлення¶
У каталозі встановлення digna перейменуйте теки поточного встановлення, щоб новий випуск можна було розгорнути поруч із ними:
dignabackend і dignacli більше не використовуються
Починаючи з Release 2026.06, dignabackend і dignacli замінено одним виконуваним файлом digna, що поєднує серверну частину та CLI. Зберігайте dignabackend_old і dignacli_old лише доти, доки не перевірите оновлення — після цього обидві теки можна видалити. Зберігайте dashboard_old, доки не відновите з неї свої файли конфігурації (див. крок 4).
Крок 3: Розпакуйте та розгорніть нову версію¶
- Розпакуйте ZIP‑файл нової інсталяції digna
- Скопіюйте новий виконуваний файл
dignaі текуdashboardдо свого каталогу встановлення - Відновіть біт виконання та належність файлів службовому обліковому запису:
Важливо
Ні config.toml, ні dashboard/dashboard_config.toml ніколи не входять до інсталяційного ZIP‑файлу — команда digna ніколи не постачає жодного з цих файлів. Тож оновлення не зачіпає вашої наявної конфігурації, а копії в перейменованих теках *_old — це єдині копії, які у вас є.
Крок 4: Відновіть свої файли конфігурації¶
Release 2026.06 змінює config.toml
Три параметри нові й обов'язкові, а два більше не використовуються. config.toml, перенесений із попереднього випуску, нових параметрів не містить, і digna не запуститься, доки їх бракує. Додайте до наявного config.toml таке:
[base]
DIGNA_SCHEDULER_MAX_DELAY = 100
DIGNA_CLEANUP_TIME = "12:00"
[encryption]
DIGNA_ENCRYPTION_KEY = 'ycELf6IbcO55dYIZHpPv6kQv/bbnUXoIaHLh2bh1kMg='
Додайте два ключі [base] до наявного розділу [base] і додайте [encryption] як новий розділ. Потім вилучіть із [app] два параметри, які більше не використовуються: digna_APP_HOST і digna_APP_PORT — адресу та порт сервер тепер бере з digna serve.
Призначення кожного параметра описано в розділі Налаштування серверної частини.
Єдиний вхід: формат [oidc_clients] змінився
У Release 2026.06 масив таблиць замінено окремою таблицею для кожного постачальника, названою за ключем постачальника. DIGNA_OIDC_KEY більше немає — ключ тепер є частиною заголовка розділу.
Було:
[[oidc_clients]]
DIGNA_OIDC_KEY = 'microsoft'
DIGNA_OIDC_CLIENT_ID = '<client_id>'
DIGNA_OIDC_CLIENT_SECRET = '<client_secret>'
DIGNA_OIDC_REDIRECT_URI = 'http://localhost:3000/oidc/callback'
DIGNA_OIDC_CONFIGURATION_URL = 'https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration'
Стало:
[oidc_clients.microsoft]
DIGNA_OIDC_CLIENT_ID = '<client_id>'
DIGNA_OIDC_CLIENT_SECRET = '<client_secret>'
DIGNA_OIDC_REDIRECT_URI = 'http://localhost:3000/oidc/callback'
DIGNA_OIDC_CONFIGURATION_URL = 'https://login.microsoftonline.com/<tenant_id>/v2.0/.well-known/openid-configuration'
Повторіть розділ для кожного постачальника і стежте, щоб кожен ключ збігався з key у dashboard_config.toml. digna config check повідомляє про oidc_clients як FAILED, доки лишається попередня форма. Це стосується лише встановлень, що використовують єдиний вхід.
Крок 5: Перезавантажте веб‑сервер¶
Панель — це набір статичних файлів, тож ваш веб‑сервер — і браузер — можуть досі віддавати попередню версію. Перезавантажте або перезапустіть веб‑сервер, на якому розміщено теку dashboard, а потім перезавантажте сторінку з примусовим оновленням (Ctrl+F5).
Крок 6: Перевірте конфігурацію¶
Перш ніж торкатися репозиторію, переконайтеся, що оновлений config.toml повний:
Кожен розділ має повідомити OK. Виправте все, про що повідомлено як FAILED, і виконайте команду ще раз, перш ніж продовжувати.
Крок 7: Замініть файл ліцензії¶
Кожен випуск ліцензується окремо. Скопіюйте license.toml, який команда digna надала для цього випуску, до каталогу встановлення, замінивши старий:
Не залишайте попередню ліцензію
license.toml, виданий для попереднього випуску, не поширюється на цей, і кожна команда, що перевіряє ліцензію, — user, inspection, repo — завершується, не торкаючись репозиторію, якщо перевірка не пройдена. Перевірте ліцензію, перш ніж продовжувати:
Крок 8: Оновіть схему репозиторію¶
Перейдіть до каталогу встановлення digna і виконайте:
Це оновлює схему PostgreSQL до найновішої версії, зберігаючи всі наявні дані.
Крок 9: Перезапустіть служби¶
Якщо digna працює як служба systemd:
Якщо сервер запускається вручну, перезапустіть його:
Якщо використовуєте nginx або Apache, перезавантажте відповідний веб‑сервер:
У сімействі RHEL повторно застосуйте мітки SELinux, якщо каталог dashboard було замінено:
Крок 10: Перевірте оновлення¶
- Відкрийте панель digna
- Переконайтеся, що інтерфейс завантажується коректно
- Перевірте журнали сервера на наявність помилок
- Переведіть на ODBC кожне підключення, яке його ще не використовувало, а потім перевірте всі підключення — див. Перевірка підключення: