Установка приложения ГИСОГД#

Обратите внимание при установке ГИСОГД

  1. Схемы в БД для ГИСОГД будут созданы с наименованием gisogd_@scheme@, где scheme – псевдоним схемы проекта Системы из regadm, таблицы m_projects. Их количество будет равно количеству схем в базе для Системы

  2. В интерфейсе ГИСОГД в произвольном порядке будут выведены только те схемы gisogd_@scheme@, для которых в адресном плане Системы указан код ОКТМО и в базе заполнен алиас префиксом ключа проекта

Произвольность перечня выводимых схем определяется один раз, при инициализации приложения ГИСОГД. При этом таблицами в БД с этими схемами не меняется, в связи с чем база в последюущем их всегда отдает в одинаковом порядке

  1. Кнопка [ИСОГД] конфигурируется отдельно. Ее можно настроить выборочно для некоторых схем, где уйдет функция размещения в ИСОГД, но появится возможность размещать в ГИСОГД

Для установки приложения ГИСОГД:

  1. Подключитесь к серверу, на котором будет установлена ГИСОГД.

  2. Скопируйте артефакты сборки приложения в директорию, откуда будет производиться установка ГИСОГД, например, /opt/Diamond :

    • docker-compose.init.yml

    • docker-compose.yml

    • .env

    • diamond.api.tar

    • diamond.geometry.tar

    • diamond.idsrv.tar

    • diamond.inbox.tar

    • diamond.init.tar

    • diamond.nginx.tar

    • diamond.num.tar

    • diamond.rabbitmq.tar

    • diamond.web.tar

  3. Укажите настройки в файле .env

Все параметры, которые необходимы изменить, заключены в файле в блок:

#########################ТУТ РЕДАКТИРУЕМ#########################

Для каждого параметра подписана поясняющая информация.


#RABBIT-MQ
#логин и пароль под которым будет доступен Rabbit
RABBITMQ_DEFAULT_USER=gems
RABBITMQ_DEFAULT_PASS=gemsAdmin123$

Для ГИСОГД поднимается свой RabbitMQ из контейнера Docker. Если он уже установлен на проекте, то укажите в параметрах логин и пароль ранее заданной учетной записи RabbitMQ


#порт по которому доступен Rabbit для взаимодействия
#порт по которому доступен UI RabbitMQ

Если RabbitMQ уже установлен на проекте, то убедитесь, что он не использует порт 5673 и 15673


RABBITMQ_CONNECTION_RETRIES=16

Число попыток переподключения к rabbitmq в случае невозможности установки соединения или его разрыва


#UI ссылка на справку ГИСОГД

USER_MANUAL_URL=${GEOMETA_URL}/help/user/usages/ias/ias.gisogd/index.html

Из Системы перейдите в справку пользователя и откройте раздел «ГИСОГД». В параметре USER_MANUAL_URL вставьте ссылку на раздел «ГИСОГД» из адресной строки браузера


#NGINX
#сертификат для SSL
NGINX_SSL_CERT_FILE=./nginx/ssl/certs/diamond.crt
#ключ сертификата для SSL
NGINX_SSL_CERT_KEY_FILE=./nginx/ssl/private/diamond.key

В данных переменных среды необходимо указать полный путь до файлов сертификата и ключа из папок etc/ssl/certs/ и /etc/ssl/private/ соответственно.

Важно

Убедитесь что файл сертификата содержит в себе все промежуточные сертификаты. Привести файл к требуемому состоянию можно при помощи инструкции: Возможные проблемы


  1. В конфигурационном файле nginx в /etc/nginx/sites-available/isogd добавьте:

  • в начало:

    upstream gisogd {
        server localhost:8000;
    }
    
  • в конец:

    server {
        server_name gisogd.gemsdev.ru;
        listen 443 ssl http2;
        include /etc/nginx/sites-available/isogd-common;
        include /etc/nginx/sites-available/isogd-ssl;
        location / {
            proxy_pass https://gisogd;
        }
    }
    

Сохраните изменения и перезапустите nginx:

systemctl restart nginx

5. Откройте терминал и перейдите в директорию, куда были скопированы установочные файлы. Например, /home/user/install/diamond. Выполните команду:

cd /home/user/install/diamond

6. Запустите скрипт deploy.sh из артефактов сборки приложения. Скрипт выполнит импорт docker-образов сервисов, необходимых для работы приложения ГИСОГД, из всех .tar файлов, которые были скопированы на сервер на шаге 2. После чего выполнит их установку.

Версионирование ГИСОГД#

Версия сборки указывается внутри файлов docker-compose.yml и docker-compose.init.yml и прописывать где-то отдельно версию приложения не нужно.