# Установщик Inventera для Windows Итоговый файл установщика: `dist\Inventera.exe`. ## Что входит в установщик - сервер Inventera, собранный в `Inventera.Server.exe`; - официальный 64-битный установщик PostgreSQL 18 от EDB; - мастер с автоматическим и ручным режимами; - проверка занятости портов; - создание базы, пользователя и конфигурации приложения; - правило брандмауэра Windows для выбранного порта Inventera; - ярлыки Inventera в меню «Пуск», на рабочем столе и в общей автозагрузке. ## Автоматический режим - PostgreSQL устанавливается без дополнительных вопросов; - логин администратора PostgreSQL: `postgres`; - пароль администратора генерируется установщиком и пользователю не показывается; - база: `Inv_Web`; - пользователь базы: `invwebuser`; - пароль базы: `invwebpassword`; - порт PostgreSQL по умолчанию: `5432`; - порт веб-приложения по умолчанию: `5050`. Порты PostgreSQL и веб-приложения не могут совпадать. Если один из требуемых портов занят, мастер не позволит продолжить установку. ## Ручной режим Мастер предлагает: 1. установить PostgreSQL из комплекта или использовать существующую установку; 2. ввести логин и пароль администратора PostgreSQL; 3. указать порты PostgreSQL и Inventera; 4. изменить имя базы, логин и пароль приложения; 5. при использовании существующего PostgreSQL указать путь к `psql.exe`. Поля базы заранее заполнены значениями `Inv_Web`, `invwebuser`, `invwebpassword`. ## Конфигурация приложения После успешного создания базы установщик записывает: ```text %ProgramData%\Inventera\config.json ``` При запуске `Inventera.Server.exe` читает из этого файла адрес и порт PostgreSQL, имя базы, логин, пароль и порт веб-приложения. Поэтому введённые в мастере значения автоматически используются кодом приложения. ## Сборка на Windows x64 Требования: - Python 3 с командой `py`; - Inno Setup 6 или 7; - заранее скачанный официальный установщик PostgreSQL для Windows x64. Перед сборкой скачайте установщик PostgreSQL, переименуйте его в `postgesql.exe` и положите по адресу: ```text installer\prerequisites\postgesql.exe ``` Запустить: ```bat build_inventera_installer_windows.bat ``` Скрипт: 1. проверит наличие `installer\prerequisites\postgesql.exe`; 2. соберёт сервер через PyInstaller; 3. скомпилирует `Inventera.iss`; 4. создаст `dist\Inventera.exe`. Установщик PostgreSQL должен находиться здесь: ```text installer\prerequisites\postgesql.exe ``` Этот файл включается внутрь `dist\Inventera.exe`, поэтому готовый установщик работает без интернета. ## Важно - Установщик требует права администратора Windows. - При удалении Inventera база PostgreSQL и файл конфигурации не удаляются автоматически, чтобы не потерять данные. - Если используется другая основная версия PostgreSQL, измените `PostgreSqlMajor` в `Inventera.iss`.