Розгортання
Цей посібник проведе вас через встановлення Observer на сервер, де ваша команда зможе ним користуватися. Глибокі технічні знання не потрібні — якщо ви можете підключитися до сервера через SSH та виконати кілька команд, ви впораєтесь.
Docker (рекомендовано)
Це найпростіший шлях. Observer постачається як єдиний Docker-образ із вже вбудованим веб-інтерфейсом — нічого додаткового встановлювати або налаштовувати на стороні фронтенду не потрібно.
Що вам потрібно
- Сервер із встановленими Docker та Docker Compose
- Доменне ім’я, спрямоване на ваш сервер (для HTTPS)
Крок 1: Згенеруйте ключі підпису
Observer використовує RSA-ключі для підпису токенів входу. Виконайте ці команди на сервері, щоб їх створити:
mkdir -p keys
openssl genrsa -out keys/jwt_rsa 4096
openssl rsa -in keys/jwt_rsa -pubout -out keys/jwt_rsa.pubЗберігайте ці ключі в безпеці. Якщо ви їх втратите, всім доведеться увійти в систему заново.
Крок 2: Налаштуйте середовище
Скопіюйте приклад файлу середовища та відредагуйте його під ваші потреби:
cp .env.example .envНайважливіші змінні:
| Змінна | Призначення | За замовчуванням |
|---|---|---|
DATABASE_DSN | Як Observer підключається до PostgreSQL | (обов’язково вказати) |
REDIS_URL | Як Observer підключається до Redis | redis://localhost:6379/0 |
JWT_PRIVATE_KEY_PATH | Де знаходиться приватний ключ із Кроку 1 | keys/jwt_rsa |
JWT_PUBLIC_KEY_PATH | Де знаходиться публічний ключ із Кроку 1 | keys/jwt_rsa.pub |
CORS_ORIGINS | Ваш домен (напр. https://observer.yourorg.org) | http://localhost:5173 |
COOKIE_SECURE | Встановіть true при використанні HTTPS (бажано) | true |
SERVER_HOST | На якій адресі слухати | localhost |
SERVER_PORT | На якому порту слухати | 9000 |
Дивіться Змінні середовища для повного списку.
Крок 3: Запустіть Observer
docker compose up -dЦе запускає PostgreSQL, Redis та Observer. Схема бази даних створюється автоматично при першому запуску — ручний крок міграції не потрібний.
Крок 4: Перевірте роботу
curl http://localhost:9000/healthВи маєте побачити:
{ "status": "healthy", "timestamp": "..." }Якщо ви бачите це, Observer готовий до роботи. Відкрийте ваш домен у браузері, щоб отримати доступ до веб-інтерфейсу.
Без Docker (VPS / bare metal)
Якщо ви віддаєте перевагу запуску Observer напряму, зберіть бінарний файл:
CGO_ENABLED=0 go build -tags production -ldflags="-s -w" -o observer ./cmd/observerПрапорець -tags production вбудовує веб-інтерфейс у бінарний файл. Ви отримуєте один файл, який можна скопіювати куди завгодно.
Запустіть його:
./observer serve --host 0.0.0.0Вам знадобляться PostgreSQL та Redis, запущені окремо. Спрямуйте DATABASE_DSN та REDIS_URL на них.
Налаштування HTTPS
Observer завжди слід запускати за зворотним проксі, що обробляє HTTPS. Це забезпечує шифрування облікових даних та персональних даних під час передачі.
Caddy — найпростіший варіант, він обробляє сертифікати автоматично:
observer.yourorg.org {
reverse_proxy localhost:9000
}Якщо ви використовуєте Nginx або інший проксі, переконайтесь, що встановили:
COOKIE_SECURE=trueу вашому середовищіCORS_ORIGINSна ваш фактичний домен (напр.https://observer.yourorg.org)