Skip to content

Spaces

Назначение

Сервис управления пространствами (workspaces) платформы. Пространства — изолированные рабочие области, объединяющие документы, медиафайлы, команды и других пользователей.

Порты

  • HTTP: 8092
  • БД: spaces_db

Ключевые возможности

  • CRUD пространств
  • Управление участниками пространств через space_users таблицу (миграция из JSONB shared_user_ids)
  • Шаринг с ролями admin / viewer через service-common/sharing
  • Публикация событий spaces.created-with-user-creation в NATS
  • Интеграция с documents-сервисом (автосоздание дефолтного документа при создании пространства)
  • Аутентификация через JWT
  • Swagger UI

Структура БД

ТаблицаОписание
spacesid (UUID), name, owner_id, shared_user_ids (JSONB, legacy)
space_usersid, space_id, user_id, role (admin/viewer), created_at, updated_at

Примечание: Таблица space_users создана в миграции 005 с миграцией данных из JSONB shared_user_ids. Новые записи создаются в space_users.

Интеграции

  • NATS: публикация событий spaces.created-with-user-creation для документов и других сервисов
  • Gateway: проксирует запросы через порт 8090

Конфигурация

ПеременнаяПо умолчаниюОписание
PORT8092Порт сервера
DB_HOSTАдрес PostgreSQL
DB_PORT5432Порт PostgreSQL
DB_USERПользователь PostgreSQL
DB_PASSWORDПароль PostgreSQL
DB_NAMEИмя базы данных
DB_SSL_MODEdisableРежим SSL
JWT_SECRETСекрет для JWT
JWT_TTL24hВремя жизни токена
MESSAGING_URLnats://localhost:4222URL NATS
SERVICE_TOKENТокен межсервисного взаимодействия
SESSION_*Настройки сессий (см. auth)
LOG_LEVELinfoУровень логирования
LOG_FORMATjsonФормат логов
LOG_OUTPUTstdoutКуда писать логи