1F-dbDeploy¶
ℹ️ 1F-dbDeploy — это вспомогательный сервис, выполняющий миграции базы данных перед запуском основного backend-сервиса 1F-CORE. Он читает SQL-скрипты миграций из директории, указанной в конфигурации, и применяет их к целевой базе данных (MS SQL Server или PostgreSQL).
Запуск в Docker Compose¶
Запуск в K8s¶
Конфигурация¶
Сервис использует конфигурационный шаблон dbdeploy.config в формате XML, который заполняется значениями переменных окружения либо указывается вручную.
Передача переменных окружения через файл¶
Любая переменная окружения для 1f-dbdeploy может быть передана через файл:
1. Создайте файл с нужным значением.
2. Примонтируйте его в контейнер через volume.
3. Установите переменную окружения с суффиксом _FILE и значением — путь к файлу.
4. При старте контейнера сервис прочитает содержимое файла и присвоит его соответствующей переменной.
Описание переменных окружения¶
| Имя переменной | Описание | Тип/Значения | Значение по умолчанию |
|---|---|---|---|
| DBDEPLOY_DB_TYPE | Тип базы данных, для которой будут выполняться миграции | mssql / postgresql | nil |
| DBDEPLOY_DB_SERVER | Адрес или имя сервера базы данных | string | nil |
| DBDEPLOY_DB_PORT | Порт для подключения к базе данных (актуально для PostgreSQL) | int | 5432 |
| DBDEPLOY_DB_NAME | Имя базы данных | string | d10task |
| DBDEPLOY_DB_USER | Имя пользователя базы данных, от имени которого выполняются миграции. Для MSSQL — d10taskuser, для PostgreSQL — migrationsdaemon | string | mssql/d10taskuser; postgresql/migrationsdaemon |
| DBDEPLOY_DB_PASSWORD | Пароль пользователя базы данных для миграций | string | nil |
| DBDEPLOY_COMMAND_TIMEOUT | Таймаут выполнения SQLкоманды в секундах (увеличьте при больших миграциях) | int (sec) | 1200 |