Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

...

  • В IIS настроить пулы приложений и аутентификацию для них (вручную или скриптами)
    • <параметры пула>

  • при необходимости, включить в используемом пуле поддержку 32-хбитный приложений

Image Removed


  • Убедиться, что пулы запускаются от имени пользователя, имеющего доступ для создания БД на SQL-сервере (при использовании Windows-аутентификации). Если на SQL-сервере используется встроенная аутентификация - настройки пользователя будут задаваться далее.

...

Предварительное развертывание

...

  1.  Cкачать пакет с решением и распаковать его в нужное место (по умолчанию - в корень системного диска C: ). На каталог назначить права для пользователя, от имени которого запускается пул приложений.

...

Структура каталога следующая:

  • express - каталог прикладного решения
    • admin - в каталоге лежит веб-интерфейс и все для его настройки
    • app - каталог для размещения сборок мобильного приложения
    • services - каталог с веб-сервисами
  • GrotemServer - каталог, в котором рекомендуется разворачивать сервер Grotem.Mobile
  • solutions - каталог, в котором рекомендуется разворачивать решения (задается в настройках сервера Grotem.Mobile)
  • metadata - каталог с файлами для создания мобильного решения (metadata.xml и т.д.) Image Modifiedскачать

    2. Скачать и распаковать архив сервера Grotem.Mobile по ссылке https://develop.superagent.ru

...

, содержимое архива распаковать и переместить в каталог GrotemServer.

...

Внимание: для работы приложения Grotem.Express необходимо скачивать сервер версии 3. Сервер версии 2 с приложением Grotem.Express не совместим.

В итоге, в каталоге GrotemServer должна получиться следующая структура:

  • bitmobile3 - каталог с сервером Grotem
  • fiscal - сервис фискализации для работы с Атол-Онлайн
  • fiscaldevices - сервис фискализации для работы с физической кассой на сервере (ссылка на инструкцию по установке и настройке)
  • gateway - шлюз для работы с сервером Grotem и другими сервисами
  • synchronization - сервис синхронизации

Image Added


3. На каталог с сервером и прикладным решением назначить права для пользователя, от имени которого запускается пул приложений (желательно создать отдельного пользователя с ролью локального администратора, в примере - пользователь grotem):

Image Added

Установка и настройка сервера Grotem.Mobile

Установка шлюза gateway

В оснастке "Диспетчер служб IIS" нужно добавить новое приложение. Для этого:

  • в структуре перейти на "Default Web Site"
  • в контекстном меню выбрать пункт "Добавить приложение..."
  • в поле "Псевдоним" указать GrotemServer
  • в поле "Пул приложений" выбрать ранее созданный пул "grotem_pool"
  • в поле "Физический путь" указать путь до каталога "gateway", внутри распакованного архива сервера Grotem.Mobile Image Added

Рекомендуется установить пользователя с ролью администратора по кнопке "Подкл. как..." и затем выполнить "Тест настроек", чтобы убедиться в корректной работе. 

Далее, в проводнике Windows открыть каталог gateway, в нем найти файл appsettings.example.json и скопировать его под именем appsettings.json. В этом файле заполнить секции:

 "Jwt": {

   "Issuer": "Identity.API",

   "Audience": "http://localhost",

   "Key": "{some_big_key_value_here_secret}"

 },

 "Urls": {

   "Synchronization

Установка и настройка сервера Grotem.Mobile

Установка серверного приложения

В оснастке "Диспетчер служб IIS" нужно добавить новое приложение. Для этого:

  • в структуре перейти на "Default Web Site"
  • в контекстном меню выбрать пункт "Добавить приложение..."
  • в поле "Псевдоним" указать GrotemServer
  • в поле "Пул приложений" выбрать ранее созданный пул "grotem_pool"
  • в поле "Физический путь" указать путь до каталога "gateway", внутри распакованного архива сервера Grotem.Mobile Image Removed

Рекомендуется установить пользователя с ролью администратора по кнопке "Подкл. как..." и затем выполнить "Тест настроек", чтобы убедиться в корректной работе. 

Далее, в проводнике Windows открыть каталог gateway, в нем найти файл appsettings.example.json и скопировать его под именем appsettings.json. В этом файле заполнить секции:

 "Jwt": {

   "Issuer": "Identity.API",

   "Audience": "http://localhost",

   "Key": "{some_big_key_value_here_secret}"

 },

 "Urls": {

   "Synchronization": "http://localhost:5001",

   "BitMobile": "http://localhost:5000"

 },

Если есть сервис Elasticsearch, заполнить соответствующую секцию данными для доступа.

По аналогии создать и заполнить файл ocelot.json, где для секций BitMobile указать:

   "Host": "localhost",

   "Port": 5000

для секций Synchronization:

  "Host": "localhost",

   "Port": 5001

для секций Fiscal:

  "Host": "localhost",

   "Port": 5002

а также:

  "BaseUrl": "http://localhost/grotemserver:5001"

После окончания настроек перезапустить пул "grotem_pool"

Настройка сервера Grotem

В "Диспетчере служб IIS" правым кликом по папке "Сайты" вызвать контекстное меню, в котором выбрать - "Добавить веб-сайт".

Image Removed

В открывшемся окне заполнить параметры:

Имя сайта - bitmobile (пул оставить такой же)

Физический путь - путь до каталога с сервером Grotem, из вышеприведенной структуры - bitmobile3

Подключить как - указать ранее созданного пользователя (в примере - grotem)

Порт – 5000

Image Removed

Для настройки сервера внести изменения в конфигурацию приложения (пункт "Редактор конфигурации")

Image Removed

  • DataBaseServer - параметры соединения с БД (указать параметры в строке соединения)

    • для смешанной авторизации на SQL строка подключения будет иметь вид server=localhost;User Id=<username>;Pwd=<password>;Connection Timeout=3600

    • для Windows-авторизации: server=localhost;Integrated Security=SSPI;Connection Timeout=3600

  • SolutionsFolder - указать каталог для создания решений

  • BitMobileServerId - в случае необходимости - изменить префикс сервера
  • RootPassword - установить пароль для доступа к серверу

Image Removed

Либо эти параметры можно изменить путем редактирования файла Web.config в каталоге сервера bitmobile3. 

После окончания настроек, убедитесь, что для пула "bitmobile" установлена версия среды CLR.NET версии 4

Image Removed

а в "дополнительных параметрах" разрешен запуск 32-разрядных приложений и в поле "Удостоверение" указан ранее созданный пользователь с ролью администратора

Image Removed

Перезапустите пул "bitmobile". Серверное приложение готово к развертыванию мобильных решений.

Проверка работоспособности сервера и шлюза

На данном этапе можно проверить работоспособность установленных сервисов. Для этого в командной строке нужно перейти в папку с сервером Grotem (bitmobile3), и с помощью утилиты Utils.exe проверить, например, версию сервера. Ответ должен возвращаться и при обращении к серверу Grotem напрямую (на 5000 порт), и через шлюз (при обращении через http://localhost/grotemserver):

utils.exe -ver -host http://localhost/bitmobile -p [пароль]

Image Removed

Настройка сервиса синхронизации

Настройка сервиса синхронизации происходит по аналогии с сервером Grotem.

В "Диспетчере служб IIS" правым кликом по папке "Сайты" вызвать контекстное меню, в котором выбрать - "Добавить веб-сайт". В открывшемся окне заполнить параметры:

Имя сайта - syncronization (пул оставить такой же)

Физический путь - путь до каталога с сервисом синхронизации, из вышеприведенной структуры - synchronization

Подключить как - указать ранее созданного пользователя (в примере - grotem)

Порт – 5001

Image Removed

Далее, перейти в Пулы приложений - syncronization - Основные настройки - Версия среды CLR .NET - Без управляемого кода.

Image Removed

Далее, в проводнике Windows открыть каталог syncronization, в нем найти файл appsettings.example.json и скопировать его под именем appsettings.json. В этом файле заполнить секции:

 "Database": {
 "Prefix": "BitMobile_1_",
 "Server": "{SQL address}",
 "Login": "{SQL user}",
 "Password": "{SQL user password}"
 },
 "Jwt": {
 "Issuer": "Identity.API",
 "Audience": "http://localhost",
 "Expires": "360",
 "Key": "{some_big_key_value_here_secret}"
 },

Если есть сервис Elasticsearch, заполнить соответствующую секцию данными для доступа.

После окончания настроек перезапустить пул syncronization.

Настройка сервиса фискализации fiscal

Внимание! разворачивание и настройка сервиса fiscal производится только если требуется работа с сервисом фискализации Атол-онлайн.

Настройка сервиса фискализации также производится по аналогии с остальными.

В "Диспетчере служб IIS" правым кликом по папке "Сайты" вызвать контекстное меню, в котором выбрать - "Добавить веб-сайт". В открывшемся окне заполнить параметры:

Имя сайта - fiscal (пул оставить такой же)

Физический путь - путь до каталога с сервисом синхронизации, из вышеприведенной структуры - fiscal

Подключить как - указать ранее созданного пользователя (в примере - grotem)

Порт - 5002

Далее, перейти в Пулы приложений - syncronization - Основные настройки - Версия среды CLR .NET - Без управляемого кода.

 Далее, в проводнике Windows открыть каталог fiscal, в нем найти файл appsettings.example.json и скопировать его под имененм appsettings.json. В этом файле заполнить секции:

"ConnectionString": "Server={SQL address};Database=FiscalDB;User Id={SQL user};Password={SQL user password};",
 "Urls": {
 "Atol": "{Atol-online URL}"
 },
 "Jwt": {
 "Issuer": "Identity.API",
 "Audience": "http://localhost",
 "Expires": "360", // minute
 "Key": "{some_big_key_value_here_secret}"
 },

Если есть сервис Elasticsearch, заполнить соответствующую секцию данными для доступа.

После окончания настроек перезапустить пул fiscal.

,

   "BitMobile": "http://localhost:5000"

 },

ВАЖНО!

Во всех сервисах в блоке:
```"JwtToken": {

В "SecretKey" требуется вставить строку длиной ровно 16 символов.

Если есть сервис Elasticsearch, заполнить соответствующую секцию данными для доступа.

По аналогии создать и заполнить файл ocelot.json, где для секций BitMobile указать:

   "Host": "localhost",

   "Port": 5000

для секций Synchronization:

  "Host": "localhost",

   "Port": 5001

для секций Fiscal:

  "Host": "localhost",

   "Port": 5002

а также:

  "BaseUrl": "http://localhost/grotemserver"

После окончания настроек перезапустить пул "grotem_pool"

Настройка сервера Grotem

В "Диспетчере служб IIS" правым кликом по папке "Сайты" вызвать контекстное меню, в котором выбрать - "Добавить веб-сайт".

Image Added

В открывшемся окне заполнить параметры:

Имя сайта - bitmobile (пул оставить такой же)

Физический путь - путь до каталога с сервером Grotem, из вышеприведенной структуры - bitmobile3

Подключить как - указать ранее созданного пользователя (в примере - grotem)

Порт – 5000

Image Added

Для настройки сервера внести изменения в конфигурацию приложения (пункт "Редактор конфигурации")


Image Added


  • DataBaseServer - параметры соединения с БД (указать параметры в строке соединения)

    • для смешанной авторизации на SQL строка подключения будет иметь вид server=<адрес_сервера_SQL>;User Id=<username>;Pwd=<password>;Connection Timeout=3600

    • для Windows-авторизации: server=<адрес_сервера_SQL>;Integrated Security=SSPI;Connection Timeout=3600

  • SolutionsFolder - каталог для создания решений

  • BitMobileServerId - ID сервера, в случае необходимости - изменить 
  • RootPassword - пароль от сервера

Image Added

Либо эти параметры можно изменить путем редактирования файла Web.config в каталоге сервера bitmobile3. 

После окончания настроек, убедитесь, что для пула "bitmobile" установлена версия среды CLR.NET версии 4

Image Added

а в "дополнительных параметрах" не разрешен запуск 32-разрядных приложений и в поле "Удостоверение" указан ранее созданный пользователь с ролью администратора

Image Added

Перезапустите пул "bitmobile".

Проверка работоспособности сервера и шлюза

На данном этапе можно проверить работоспособность установленных сервисов. Для этого в командной строке нужно перейти в папку с сервером Grotem (bitmobile3), и с помощью утилиты Utils.exe проверить, например, версию сервера. Ответ должен возвращаться и при обращении к серверу Grotem напрямую (на 5000 порт), и через шлюз (при обращении через http://localhost/grotemserver):

utils.exe -ver -host http://localhost/bitmobile -p [пароль]

Image Added

Настройка сервиса синхронизации

Настройка сервиса синхронизации происходит по аналогии с сервером Grotem.

В "Диспетчере служб IIS" правым кликом по папке "Сайты" вызвать контекстное меню, в котором выбрать - "Добавить веб-сайт". В открывшемся окне заполнить параметры:

Имя сайта - synchronization (пул оставить такой же)

Физический путь - путь до каталога с сервисом синхронизации, из вышеприведенной структуры - synchronization

Подключить как - указать ранее созданного пользователя (в примере - grotem)

Порт – 5001

Image Added

Далее, перейти в Пулы приложений - synchronization - Основные настройки - Версия среды CLR .NET - Без управляемого кода.

Image Added

Далее, в проводнике Windows открыть каталог synchronization, в нем найти файл appsettings.example.json и скопировать его под именем appsettings.json. В этом файле заполнить секции:

 "Database": {
 "Prefix": "BitMobile_1_", // число в префиксе должно совпадать с ID сервера
 "Server": "{SQL address}",
 "Login": "{SQL user}",
 "Password": "{SQL user password}"
 },
 "Jwt": {
 "Issuer": "Identity.API",
 "Audience": "http://localhost",
 "Expires": "360",
 "Key": "{some_big_key_value_here_secret}"
 },

Если есть сервис Elasticsearch, заполнить соответствующую секцию данными для доступа.

После окончания настроек перезапустить пул synchronization.

Настройка сервиса фискализации fiscal

Внимание! разворачивание и настройка сервиса fiscal производится только если требуется работа с сервисом фискализации Атол-онлайн.

Настройка сервиса фискализации также производится по аналогии с остальными.

В "Диспетчере служб IIS" правым кликом по папке "Сайты" вызвать контекстное меню, в котором выбрать - "Добавить веб-сайт". В открывшемся окне заполнить параметры:

Имя сайта - fiscal (пул оставить такой же)

Физический путь - путь до каталога с сервисом синхронизации, из вышеприведенной структуры - fiscal

Подключить как - указать ранее созданного пользователя (в примере - grotem)

Порт - 5002

Далее, перейти в Пулы приложений - fiscal- Основные настройки - Версия среды CLR .NET v.4.

Далее, в проводнике Windows открыть каталог fiscal, в нем найти файл appsettings.example.json и скопировать его под именем appsettings.json. В этом файле заполнить секции:

"ConnectionString": "Server={SQL address};Database=FiscalDB;User Id={SQL user};Password={SQL user password};",
 "Urls": {
 "Atol": "{Atol-online URL}"
 },
 "Jwt": {
 "Issuer": "Identity.API",
 "Audience": "http://localhost",
 "Expires": "360", // minute
 "Key": "{some_big_key_value_here_secret}"
 },

Если есть сервис Elasticsearch, заполнить соответствующую секцию данными для доступа.

После окончания настроек перезапустить пул fiscal.

После запуска сервиса fiscal проверить в БД создание базы FiscalDB. Если база не была создана, то выполнить в командной строке команду:

>dotnet C:\\Grotem\ge_package\GrotemServer\fiscal\Fiscal.API.dll

Image Added

Возможно возникновение ошибок, например, заняты порты 5000 и 5001. В этом случае необходимо выполнить команду с параметрами:

>dotnet C:\\Grotem\ge_package\GrotemServer\fiscal\Fiscal.API.dll --URLs http://localhost:<любой_свободный_порт> //попытка запуска службы на другом порту

или временно переназначить для сервисов "BitMobile" и "Synchronization" порты на другие свободные, выполнить команду и затем вернуть первоначальные настройки. После запуска сервиса fiscal в БД будет создана база FiscalDB.

Разворачивание мобильного решения

...

                        //пример "ANDROID_URL": "http://localhost/express/app/com.grotem.express.apk 
        }
</script>

```

Далее необходимо убедиться в наличии типа MIME. Для этого в оснастке IIS, в корневом разделе, откройте для редактирования типы MIME

Image Added

В открывшемся списке проверьте наличие и при необходимости добавьте расширение файла ".application" с типом "application/x-ms-application"

Image Added

Проверка работоспособности веб-интерфейса

...

В оснастке IIS перейдите на виртуальный каталог express и перейдите в модуль "URL Rewrite".

Image RemovedImage Added

В настройке URL Rewrite создайте одно пустое правило - оно будет выступать в качестве шаблона. Заполним обязательные поля: "Имя", "Шаблон" и "URL-адрес переопределения значением" значением "Template rule" и нажмем "Применить".

...

Установка сертификата производится при помощи утилиты Utils.exe, запускаемой с ключом -ucert (подробности смотрите в справке Utils.exe -h)

Якорь
MinReqGeServ2021
MinReqGeServ2021
Минимальные требования

  • Windows Server 2012
  • СУБД - MS SQL Server 2012
  • MSSQL Management Studio
  • учетная запись на SQL-сервере с ролями public и dbcreator
  • Web-сервер - IIS версии 8 и выше
  • доступ к веб-серверу из-вне по портам 80 (443 или другим, определенным клиентом)
  • внешний фиксированный ("белый") IP-адрес (возможно, доменное имя)

...