# Мастер установки

Шаги установки будут различаться в зависимости от того, планируете ли вы использовать универсальный сервер (как правило, для небольших инсталляций) или отдельные серверы для приложения и базы данных (крупная инсталляция с более чем 1000 устройствами). Пожалуйста, выберите соответствующий раздел ниже в зависимости от типа вашей установки.

Для установки требуется дистрибутивная сборка платформы Navixy. Ее можно скачать непосредственно на сервер с помощью следующей команды:

```
wget --content-disposition https://get.navixy.com/latest
```

После загрузки пакета можно продолжить установку.

## Вариант 1. Универсальный сервер

Сначала распакуйте сборку платформы Navixy, предоставленную в виде `tar.gz` архива. Перейдите в каталог с архивом и выполните следующую команду для распаковки (разумеется, замените **\<PACKAGE\_NAME>** на фактическое имя файла):

```
tar -zxvf <PACKAGE_NAME>.tar.gz
```

Архив будет распакован в `/navixy-package` каталог. Затем откройте этот каталог и запустите из него скрипт установки:

```
./install.sh
```

Скрипт проверит совместимость ОС и другие предварительные требования. На этом этапе от Вас не требуется никаких действий.

### Выбор роли сервера

Вам будет предложено выбрать роль сервера для дальнейшего развертывания. Необходимо выбрать **Single server - all services in one server**. Будьте внимательны и не выбирайте другие опции, так как они предназначены для развертывания с двумя серверами.

![](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-847cd113294e5de3eb2264c8c1c73acb181e3ae9%2Fimage-20230802-134855.png?alt=media)

### Процесс установки

Скрипт выполнит проверку программного обеспечения. Вы увидите, что устанавливаются программы, включая Java, Nginx и MySQL. Появится запрос на перезапуск MySQL — подтвердите это, введя `1`. Далее вам будет предложено подтвердить инициализацию баз данных — снова подтвердите, введя `y`.

![](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-872fc20c2335ea24128efcf0192b718165167dea%2Fimage-20230810-130547.png?alt=media)

MySQL попросит указать пароль root. Для платформы это не обязательно, поэтому можно оставить поле пустым. Если вы зададите пароль, обязательно его запомните. Далее скрипт создаст базы данных и пользователя БД *navixy* с случайным паролем. Это будет основной пользователь, с помощью которого сервисы платформы взаимодействуют с базой данных. Однако вам не нужно запоминать его пароль, так как он будет автоматически вставлен в конфигурационные файлы. После этого скрипт заполнит базу данных системными таблицами.

![](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-aa8fb97a27855cf0497f8493951589ebf76b90f5%2Fimage-20230810-130559.png?alt=media)

После инициализации базы данных скрипт задаст следующий вопрос:

```
Этот скрипт установит платформу Navixy на этот сервер. Продолжить? (y/n)
```

Подтвердите, введя `y`, и он выполнит следующее:

* Создать пользователя для Java-сервисов (backend)
* Создать директории для Java-сервисов и заполнить их необходимыми файлами
* Копировать и настраивать веб-компоненты (frontend)
* Копировать runit-скрипты, необходимые для запуска Java-сервисов
* Настроить Java-сервисы

### Домены

Скрипт попросит указать доменное имя для вашего сервиса. Это домен, используемый для:

* Все системные сервисы при установке в один домен.
* Пользовательский интерфейс и активация устройств при установке в три домена.

![On-Premise - установка на Ubuntu - Настройка домена](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-bc520a00f56721ab711a683264dbbcbd67dd86f0%2Fimage-20230802-140224.png?alt=media)

Далее вам будет задан вопрос о доменах API и панели администратора.

* Для установки в один домен оставьте эти значения пустыми и нажмите Enter (OK).
* Для установки в три домена укажите соответственно домены для API и панели.

![On-Premise - установка на Ubuntu - Настройка API](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-4ba633d13f4ee87f5b0f5b551e3eb259a8a23457%2Fimage-20230802-140910.png?alt=media)

![On-Premise - установка на Ubuntu - Настройка панели](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-541940424f651445512bf3d233c040da5cdc215b%2Fimage-20230802-140938.png?alt=media)

Вы увидите уведомление о конфигурации доменов, которую вы задали.

Далее вам будет предложено установить SSL-сертификаты для вашей платформы. Если вы хотите это сделать, нажмите `Yes` и следуйте подсказкам мастера.

Подробную информацию по установке SSL-сертификата смотрите в [Мастере конфигурации](https://www.navixy.com/docs/on-premise/ru/on-premise/how-to-guide/installation/advanced-installation/ubuntu-20/configuration-wizard) страницу.

На этом базовая установка платформы завершена. Если требуется дополнительная настройка, используйте [**./configure.sh**](https://www.navixy.com/docs/on-premise/ru/on-premise/how-to-guide/installation/advanced-installation/ubuntu-20/configuration-wizard) скрипт.

## Вариант 2. Два сервера

Сначала распакуйте сборку платформы Navixy, предоставленную в виде `tar.gz` архив. Загрузите и распакуйте архив в **на оба сервера**. Для распаковки перейдите в каталог с архивом и выполните следующую команду (разумеется, замените **\<PACKAGE\_NAME>** на фактическое имя файла):

```
tar -zxvf <PACKAGE_NAME>.tar.gz
```

Архив будет распакован в **navixy-package** каталог. Следующая установка должна быть выполнена сначала на сервере базы данных, затем на сервере приложения.

### Сервер базы данных

Откройте папку `/navixy-package` каталог и выполните `install.sh` скрипт из него.

```
./install.sh
```

Вам будет предложено выбрать роль сервера для дальнейшего развертывания. Выберите **#2 SQL server**.

![On-Premise - установка на Ubuntu - Сервер БД](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-79d6fdad87871602eacd34927d00347410f32a65%2Fimage-20230803-135111.png?alt=media)

Скрипт начнет с проверки системы и программного обеспечения. Вы увидите, что MySQL устанавливается и настраивается. Появится запрос на перезапуск MySQL — подтвердите это, введя `1`. Далее вам будет предложено подтвердить инициализацию баз данных — снова подтвердите, введя `y`.

![](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-913590364567d9e8ca55aba639c085ad75cc458c%2Fimage-20230810-130630.png?alt=media)

MySQL попросит указать пароль root. Для платформы это не обязательно, поэтому можно оставить поле пустым. Если вы зададите пароль, обязательно его запомните. Далее скрипт создаст базы данных и пользователя БД *navixy* с случайным паролем. Это будет основной пользователь, с помощью которого сервисы платформы взаимодействуют с базой данных.

![](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-19193fde296d45c6e7ba19a9cd1664eb3c0e952e%2Fimage-20230810-130640.png?alt=media)

Затем скрипт заполнит базу данных системными таблицами. После инициализации базы данных вы увидите следующую информацию о сервере базы данных:

* Имя пользователя: *navixy* - это пользователь БД, указанный в системных конфигурациях для взаимодействия с базой данных.
* Пароль: *случайный* - пароль для пользователя *navixy* .
* IP-адрес: фактический адрес вашего сервера БД.

![](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-b79f8c73ecc3a18d674bbef803fb604f0a8d9ad9%2Fimage-20230810-130655.png?alt=media)

Обязательно сохраните эти значения, так как они понадобятся вам при установке сервера приложения.

### Сервер приложения

Откройте папку `/navixy-package` каталог и выполните `install.sh` скрипт из него.

```
./install.sh
```

Вам будет предложено выбрать роль сервера для дальнейшего развертывания. Выберите **#3 Application server**.

![On-Premise - установка на Ubuntu - Сервер приложения](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-16d6b036536c02960eb0248fa8ba1f3519e124c9%2Fimage-20230803-135805.png?alt=media)

Скрипт загрузит и установит Java, Nginx и другие предварительные компоненты, необходимые для работы платформы. Это произойдет автоматически и не требует вашего вмешательства. После установки всех предварительных компонентов скрипт запросит пароль пользователя SQL-сервера. Это пароль пользователя *navixy* , который вы получили после установки базы данных на предыдущем шаге. Используйте `Shift+Insert` чтобы вставить его из буфера обмена.

![On-Premise - установка на Ubuntu - Учетные данные MySQL](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-5a7cbb40bfa5e146358eac6a24b8eb72c09e95d9%2Fimage-20230803-135651.png?alt=media)

Далее вам будет предложено ввести IP-адрес вашего сервера базы данных. Введите его.

![On-Premise - установка на Ubuntu - Настройка MySQL](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-6f4d7d68026f381ca42ce6d824d3f4342265f23a%2Fimage-20230803-135831.png?alt=media)

Скрипт проверит корректность IP. Затем вам будет предложено подтвердить установку платформы на вашем сервере.

Сделайте это, введя `y` и нажав `Enter`.

![On-Premise - установка на Ubuntu - Сервер приложения](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-baa31dab35969d983f6b9229b44f488135afb8c2%2Fimage-20230810-130708.png?alt=media)

### Домены

Скрипт попросит указать доменное имя для вашего сервиса. Это домен, используемый для:

* Все системные сервисы при установке в один домен.
* Пользовательский интерфейс и активация устройств при установке в три домена.

![On-Premise - установка на Ubuntu - Проверка домена](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-bc520a00f56721ab711a683264dbbcbd67dd86f0%2Fimage-20230802-140224.png?alt=media)

Далее вам будет задан вопрос о доменах API и панели администратора.

* Для установки в один домен оставьте эти значения пустыми и нажмите Enter (OK).
* Для установки в три домена укажите соответственно домены для API и панели.

![On-Premise - установка на Ubuntu - Проверка API](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-4ba633d13f4ee87f5b0f5b551e3eb259a8a23457%2Fimage-20230802-140910.png?alt=media)

![On-Premise - установка на Ubuntu - Проверка панели](https://4066122344-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FkUnMmePH99SsdChtqqu7%2Fuploads%2Fgit-blob-541940424f651445512bf3d233c040da5cdc215b%2Fimage-20230802-140938.png?alt=media)

Вы увидите уведомление о конфигурации доменов, которую вы задали.

Далее вам будет предложено установить SSL-сертификаты для вашей платформы. Если вы хотите это сделать, нажмите `Yes` и следуйте подсказкам мастера.

Подробную информацию по установке SSL-сертификата смотрите в [Мастере конфигурации](https://www.navixy.com/docs/on-premise/ru/on-premise/how-to-guide/installation/advanced-installation/ubuntu-20/configuration-wizard) страницу.

На этом базовая установка платформы завершена. Если требуется дополнительная настройка, используйте [**./configure.sh**](https://www.navixy.com/docs/on-premise/ru/on-premise/how-to-guide/installation/advanced-installation/ubuntu-20/configuration-wizard) скрипт.
