Подключение своего типа хранилищ контента¶
Для подключения к Системе хранилища контента типа, который не предусмотрен сервисом «Управление файлами», необходимо первыми шагами подключить плагин к сервису «Управление файлами». Для этого необходимо выполнить следующие действия на примере подключения коннектора postgres:
- В сервисе «Управление конфигурациями» создать 2 конфигурации для сервиса «Управление файлами» (dh-files-service), отвечающие за режим разработки и путь до собранного артефакта плагина.
Для первой конфигурации в поле Ключ указать значение «docshouse.files.plugins.enabled», в поле Значение указать значение «true».
Для второй конфигурации в поле Ключ указать значение «docshouse.files.plugins.folder», в поле Значение указать путь до директории, где хранится JAR-файл, например, «/u01/dochouse/files/plugins/». Данный путь будет использовать Система для поиска JAR-файла и применять его в режиме плагина.
2. Найти идентификатор пода сервиса «dh-files-service» командой:
На примере Minikube здесь и далее.
kubectl get pods | grep files
3. Перенести в сервис «dh-files-service» JAR-файл командой:
kubectl cp наименование-JAR.jar наименование-пода-сервиса:/путь-до-директории-с-JAR/
Путь до директории с JAR-файлом должен соответствовать указанному значению для конфигурации «docshouse.files.plugins.folder». Пример такой команды: «kubectl cp dh-content-connector-postgresql.jar dh-files-service-6c9f7b99bd-22vmc:/u01/dochouse/files/plugins/».
4. Проверить наличие файла в поде сервиса командами:
kubectl exec –it наименование-пода-сервиса bash
ls -ls /путь-до-директории-с-JAR/
Пример такой команды с учетом конфигурации: «ls -ls /u01/dochouse/files/plugins/».
В результат должен попасть JAR-файл.
5. Перезагрузить под сервиса командой:
kubectl delete pods наименование-пода-сервиса
В процессе перезагрузки считываются и применяются настройки из сервиса «Управление конфигурациями».
Для тестирования хранилища необходимо выполнить следующие действия:
- В Postman выполнить запрос, сканирующий наличие плагина по указанному пути в сервисе «Управление файлами».
Для этого нужно отправить запрос «GET {hostname}/dh-files-service/api/v1/plugins/scan» и в случае успеха получить в ответ тип хранилища коннектора из JAR-файла.
2. В Postman отправить запрос на создание хранилища «POST {hostname}/dh-files-service/api/v1/storages».
Пример тела запроса на создание хранилища:
{
"code": "postgres",
"name": "postgres_storage",
"description": "postgres_storage",
"type": "postgres",
"closeDate": "2025-03-20T10:28:11.811Z",
"maxElementsSize":10000,
"maxElementsLimit":1000,
"freeThreshold":10,
"freeWarning":10",
"host": "192.168.49.1",
"port": "5432",
"dataBase": "postgres",
"user": "admin",
"password": "123456",
"schema": "public"
}
Параметры запроса должны соответствовать параметрам, описанным в конфигурации кастомного коннектора хранилища.
Если в ответе получено «201 Created», хранилище появится в разделе Хранилища сервиса «Управление файлами».
3. Для сохранения контента в новый тип хранилища создать и с помощью функции выбора хранилища привязать политику размещения в интерфейсе Системы или с помощью запроса в Postman.
4. Загрузить новый файл и выбрать для него ту политику размещения, которая привязана к хранилищу.
5. Убедиться, что файл успешно загружен в нужное хранилище в интерфейсе Системы или через БД в таблице, указанной в конфигурации коннектора хранилища.
Пример конфигураций коннектора хранилища на рисунке ниже.


