Перейти к основному содержимому

Установка системы

Развёртывание системы состоит из следующих этапов:

  • получение дистрибутива приложения в виде Docker-образа;
  • создание базы данных на существующем сервере СУБД;
  • подготовка конфигурации;
  • запуск Docker-контейнера с приложением.

Предварительные требования:

  • машина или сервер с установленной системой контейнеризации;
  • сервер СУБД и учётная запись.

Системные требования описаны в статье Системные требования.

Получение дистрибутива

Дистрибутив представляет из себя Docker-образ приложения «ФинГрад — Корпоративное казначейство». Для получения последней версии необходимо на машине с установленной системой контейнеризации, например, Docker, исполнить команду в терминале:

docker pull registry.fingrad.com/web:latest

Выполнение команды требует сетевого доступа к ресурсу https://registry.fingrad.com.

Передача дистрибутива внутри сети без доступа в Интернет

При необходимости установки «ФинГрад — Корпоративное казначейство» в изолированном контуре без доступа к Интернету следует выполнить следующий ряд действий:

  1. на любой машине с доступом в Интернет и установленной системой контейнеризации скачать Docker-образ дистрибутива (см. Получение дистрибутива);

  2. на этой же машине выполнить команду в терминале для сохранения образа в виде файла-архива:

    docker save registry.fingrad.com/web:latest | gzip > fingrad.tar.gz
  3. перенести сформированный .tar.gz файл на целевую машину в изолированном контуре. Например, при помощи инструментов scp, cp, или rsync;

  4. на целевой машине выполнить команду в терминале для загрузки образа из файла:

    docker load -i fingrad.tar.gz

База данных

ПО «ФинГрад — Корпоративное казначейство» в своей работе использует базу данных определённой структуры. Создать её можно при помощи утилиты, входящей в дистрибутив приложения. Требуется существующий сервер СУБД и его учётная запись.

Шаблон команды терминала для создания БД:

docker container run --rm -it \
--entrypoint dotnet \
registry.fingrad.com/web:latest \
../DbManager.dll /action=create /dbms=... /server=... [/port=...] /user=dev /password=... /database=...

Пример команды для создания БД с названием MyCompany на сервере PostgreSQL с IP-адресом 10.0.0.123 и портом 5432 под учётной записью login / pass.

docker container run --rm -it \
--entrypoint dotnet \
registry.fingrad.com/web:latest \
../DbManager.dll /action=create /dbms=postgresql /server="10.0.0.123" /port=5432 /user=login /password=pass /database=MyCompany

Параметр port указывать необязательно, если он стандартный для СУБД.

В результате успешного создания БД окончание вывода команды будет иметь вид:

Создание базы данных...
Завершение работы...

Приложение

Конфигурация

Перед запуском приложения необходимо создать конфигурацию со строкой подключения к БД. Файл с конфигурацией должен называться appsettings.json. Папка с этим файлом в дальнейшем будет примонтирована к Docker-контейнеру.

Пример конфигурации и содержимого appsettings.json:

{
"DbSettings": {
"ConnectionString": "Driver={PostgreSQL Unicode};Server=10.0.0.123;Port=5432;Database=MyCompany;Uid=login;Pwd=pass;sslmode=prefer;timeout=15;commlog=1;persist security info=True;"
}
}

где 10.0.0.123 – IP-адрес сервера СУБД, 5432 – порт сервера, MyCompany – название БД, login – имя учётной записи, pass – пароль учётной записи.

В примере приведена типовая строка подключения к БД через PostgreSQL ODBC Driver (psqlODBC). Краткая справка: https://www.connectionstrings.com/postgresql-odbc-driver-psqlodbc/.

Запуск

При наличии БД для подключения и файла с конфигурацией приложение «ФинГрад — Корпоративное казначейство» запускается при помощи команды терминала для запуска Docker-контейнера. Шаблон команды:

docker container run --name fingrad \
-v <папка-с-конфигурацией>:/app/Fingrad/web/config/ \
--restart unless-stopped \
--detach \
-p <порт-хоста>:8080 \
registry.fingrad.com/web:latest

В шаблоне необходимо заменить:

  • <папка-с-конфигурацией> на путь к папке с файлом appsettings.json на хосте;
  • <порт-хоста> на порт хоста, по которому приложение будет доступно.

Пример команды для запуска приложения с конфигурацией по пути ~/fingrad/config/ на 80-м порту (HTTP):

docker container run --name fingrad \
-v ~/fingrad/config/:/app/Fingrad/web/config/ \
--restart unless-stopped \
--detach \
-p 80:8080 \
registry.fingrad.com/web:latest

При успешном выполнении всех этапов установки системы приложение будет доступно на хосте по адресу http://localhost.

Первый вход

Вход в систему сразу после развёртывания возможен по учётной записи администратора, имеющейся в новой БД по умолчанию: root / root.

Далее см. Вход в систему.