Установка системы
Развёртывание системы состоит из следующих этапов:
- получение дистрибутива приложения в виде Docker-образа;
- создание базы данных на существующем сервере СУБД;
- подготовка конфигурации;
- запуск Docker-контейнера с приложением.
Предварительные требования:
- машина или сервер с установленной системой контейнеризации;
- сервер СУБД и учётная запись.
Системные требования описаны в статье Системные требования.
Получение дистрибутива
Дистрибутив представляет из себя Docker-образ приложения «ФинГрад — Корпоративное казначейство». Для получения последней версии необходимо на машине с установленной системой контейнеризации, например, Docker, исполнить команду в терминале:
docker pull registry.fingrad.com/web:latest
Выполнение команды требует сетевого доступа к ресурсу https://registry.fingrad.com.
Передача дистрибутива внутри сети без доступа в Интернет
При необходимости установки «ФинГрад — Корпоративное казначейство» в изолированном контуре без доступа к Интернету следует выполнить следующий ряд действий:
-
на любой машине с доступом в Интернет и установленной системой контейнеризации скачать Docker-образ дистрибутива (см. Получение дистрибутива);
-
на этой же машине выполнить команду в терминале для сохранения образа в виде файла-архива:
docker save registry.fingrad.com/web:latest | gzip > fingrad.tar.gz -
перенести сформированный
.tar.gzфайл на целевую машину в изолированном контуре. Например, при помощи инструментовscp,cp, илиrsync; -
на целевой машине выполнить команду в терминале для загрузки образа из файла:
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.
Далее см. Вход в систему.