Конфигурация приложения backend
Скачать пример файла конфигурации
Файл монтируется в контейнер по пути /flip/cfg/config.yaml.
Область конфигурации
Файл содержит параметры, управляемые на стороне установки: подключения к внешним сервисам, домен, секреты и способ авторизации. Интервалы фоновых задач, время жизни токенов и кэшей, лимиты и тарифные ограничения фиксированы в образе и в конфигурационном файле не задаются.
Секреты
Все поля с пометкой «секрет» обязательны и должны быть уникальными для установки. Генерация значения:
bash
openssl rand -hex 16Описание конфигурационных полей
Domain
- Domain: Базовый URL приложения с путём
/app. Используется в ссылках в письмах и при SSO-авторизации.
Пример:https://example.flip-chart.ru/app
LogLevel
- LogLevel: Уровень логирования:
debug,info,warn,error.
Пример:info
Server
- Host: Адрес прослушивания сервера.
Пример:0.0.0.0 - Port: Порт сервера. Должен совпадать с upstream в конфигурации nginx и с
flipApi.internalUrlв конфигурации mcp-server.
Пример:9000 - Timeout: Тайм-аут обработки HTTP-запроса.
Пример:10s
Postgres
- Address: Адрес сервера PostgreSQL.
Пример:flip-postgres - Port: Порт PostgreSQL.
Пример:5432 - User: Имя пользователя.
Пример:flip - Password: Пароль.
Пример:secret-passwd - Database: Имя базы данных.
Пример:flip - Driver: Драйвер миграций. Всегда
postgres. - SSLmode: Режим SSL-соединения:
disable,require,verify-full.
Standalone-установка с PostgreSQL в контейнере —disable; внешняя БД —requireилиverify-full.
Пример:disable - SSLRootCert: Путь к корневому сертификату внутри контейнера. Обязателен при
SSLmode: verify-full; файл должен быть смонтирован в контейнер.
Пример:/flip/certs/ca.pem - MigrationDir: Каталог миграций внутри контейнера. Всегда
/flip/migrations.
Миграции
Миграции базы данных применяются автоматически при каждом запуске контейнера backend.
S3
- AwsAccessKey: Ключ доступа к S3-хранилищу.
Пример:flip-minioadmin - AwsSecretKey: Секретный ключ.
Пример:flip-minioadminsecret - AwsRegion: Регион хранилища. Для MinIO значение произвольное.
Пример:ru-central1 - AwsUrl: URL S3-хранилища.
Пример:http://flip-minio:9000 - AWSPartitionID: Идентификатор раздела AWS. Пустое значение.
Пример:"" - BucketName: Имя бакета.
Пример:flip - Folders: Префиксы для хранения данных внутри бакета. Значения фиксированы.
- FlipsAvatarsFolder:
flips-avatars/ - TeamsAvatarsFolder:
teams-avatars/ - UsersAvatarsFolder:
avatars/ - ElementsFolder:
elements/ - CommentsFolder:
comments/ - DocsFolder:
documents/ - LinksFolder:
links/ - PresentationFolder:
presentations/ - ShapesFolder:
shapes/
- FlipsAvatarsFolder:
Примечание
Сервисы backend и file-handlers должны быть подключены к одному S3-хранилищу и одному бакету.
RedisClient (Valkey)
- Address: Адрес сервера Valkey.
Пример:flip-valkey:6379 - Username: Имя пользователя. Пустое значение, если ACL не используется.
Пример:"" - Password: Пароль. Пустое значение, если не используется.
Пример:"" - DB: Номер базы данных.
Пример:0
Примечание
Сервисы backend, file-handlers и mcp-server должны быть подключены к одному экземпляру Valkey. Поддерживается только standalone-режим Valkey (без Sentinel и Cluster).
Mail
- Host: Адрес SMTP-сервера.
Пример:smtp.example.ru - Port: Порт SMTP-сервера.
Пример:587 - User: Имя пользователя SMTP.
Пример:user - Password: Пароль SMTP.
Пример:password - From: Адрес отправителя.
Пример:welcome@example.ru
Auth
Секция настроек авторизации.
CommonAuthConfig
- CommonRegistrationFlow: Самостоятельная регистрация пользователей по e-mail. При
falseдоступ в приложение — только по приглашению или через SSO/LDAP.
Пример:true
ConfirmationConfig
- CodeDigits: Количество цифр в коде подтверждения e-mail.
Пример:6 - Secret: Секрет для подписи кодов подтверждения.
Пример:3f1c9a7e2b8d4c6a1e5f0b9d7c3a2e81
HashPasswordSalt
- HashPasswordSalt: Соль для хеширования паролей. Секрет.
FlipPasswordCipherSecret
- FlipPasswordCipherSecret: Секрет для шифрования паролей доступа к доскам.
TokenConfig
- AccessToken.Secret: Секрет для подписи access-токенов.
- RefreshToken.Secret: Секрет для подписи refresh-токенов.
- FlipPasswordToken.Secret: Секрет для подписи токенов доступа к доскам, защищённым паролем.
KeyCloakAuthConfig
Прямая интеграция с Keycloak. Для SSO через OIDC/SAML не используется — см. Настройка SSO.
- Enable: Включение интеграции.
Пример:false - Address: Адрес сервера Keycloak.
Пример:https://keycloak.example.ru - ClientID: Идентификатор клиента.
- ClientSecret: Секрет клиента.
- Realm: Имя realm.
LdapAuthConfig
См. Интеграция с LDAP.
- Enable: Включение авторизации через LDAP.
Пример:false - Address: URL LDAP-сервера.
Пример:ldap://ldap.example.ru:389 - BaseDN: Базовый DN для поиска пользователей.
Пример:dc=example,dc=ru - BindDN: DN служебного пользователя для подключения.
Пример:cn=admin,dc=example,dc=ru - BindPassword: Пароль служебного пользователя.
- UseTLS: Выполнение STARTTLS после подключения.
Пример:false - Attributes: Имена LDAP-атрибутов.
- DN:
dn - CN: атрибут с отображаемым именем пользователя, например
cn - Mail: атрибут с e-mail, например
mail - AccountStatus: атрибут статуса учётной записи, например
accountStatus
- DN:
Примечание
Одновременно может быть включён только один из провайдеров: KeyCloakAuthConfig или LdapAuthConfig.
SessionConfig
- Secret: Секрет для подписи пользовательских сессий.
InvitationConfig
- Secret: Секрет для подписи ссылок-приглашений.
FileHandlerServiceConfig
- Enable: Включение взаимодействия с сервисом file-handlers (загрузка документов, конвертация, превью).
Пример:true - Address: Адрес API сервиса file-handlers.
Пример:http://flip-file-handlers:8080/api
Documents
- Enable: Включение функциональности документов на доске.
Пример:true
McpAgentTokens
Авторизация AI-агентов через MCP-сервер.
- Enable: Включение выдачи токенов агентам по OAuth. Обязательно
trueпри использовании MCP-сервера.
Пример:true - OAuth.Clients: Список OAuth-клиентов. По умолчанию содержит встроенного клиента
flip-mcp(соответствуетflipApi.clientIdв конфигурации mcp-server) с callback-адресамиhttp://localhost:*,https://claude.ai/api/mcp/auth_callback,https://claude.com/api/mcp/auth_callbackи правамиflip:read,flip:write,comment:read. Указывается только при необходимости заменить встроенный список; заданное значение замещает его полностью.- id: Идентификатор клиента.
- name: Отображаемое имя на экране подтверждения доступа.
- redirectURIPatterns: Разрешённые callback-адреса MCP-клиентов.
- scopes: Выдаваемые права.
- isPublic: Публичный клиент (PKCE, без client secret). Значение
true.