Установка и настройка¶
Инструкция описывает процесс установки и настройки консоли управления ПроAPI Защита.
Шаг 1. Получение доступа и лицензионного ключа¶
- Отправьте запрос на presale@webmonitorx.ru для получения доступа к репозиторию продукта.
Шаг 2. Подключение Docker Registry¶
-
Выполните команду:
docker login wmx-public.gitlab.yandexcloud.net:5050
-
Введите логин и пароль, полученные на предыдущем шаге.
Шаг 3. Установка базы данных¶
-
Разверните в вашей инфраструктуре MongoDB с аутентификацией по логину и паролю. Для установки MongoDB: Центр загрузки MongoDB
-
Пример запуска MongoDB в Docker-контейнере (в production окружении запуск может выглядеть иначе):
docker run -it --rm \ --name mongodb \ -v ${PWD}/mongo_data:/data/db \ -e MONGO_INITDB_ROOT_USERNAME="apifw" \ -e MONGO_INITDB_ROOT_PASSWORD="__SECURE_PASSWORD__" \ -p 27017:27017 \ mongo
Шаг 4. Миграции базы данных¶
Перед первым запуском консоли управления и при её обновлении необходимо выполнить миграцию базы данных. Этот процесс включает создание необходимых таблиц, индексов, представлений (view) и других элементов.
Запуск контейнера для выполнения миграции:
docker pull wmx-public.gitlab.yandexcloud.net:5050/wmx-private/wmx-api-firewall/apifw-db-migrations:latest
docker run -it \
--name api-fw-manager-migrations \
-e MONGO_URI="mongodb://MONGO_LOGIN:MONGO_PASSWD@$MONGO_ADDR:PORT"
wmx-public.gitlab.yandexcloud.net:5050/wmx-private/wmx-api-firewall/apifw- db-migrations:latest \
up
Переменная окружения:
Переменная среды | Описание |
---|---|
MONGO_URI | Строка подключения к MongoDB |
Шаг 5. Установка Консоли управления ПроAPI Защита¶
- Разверните Консоль управления ПроAPI Защита, используя docker-образ приложения на сервере в вашей сети.
Запуск контейнера с приложением:
docker pull wmx-public.gitlab.yandexcloud.net:5050/wmx-private/wmx-api-firewall/apifw-manager:latest
docker run -d \
--name api-fw-manager \
-e MONGO_URI="mongodb://MONGO_LOGIN:MONGO_PASSWD@$MONGO_ADDR:PORT" \
-e URL_MANAGER=${URL_MANAGER} \
-e LICENSE_KEY=__LICENSE_KEY__ \
-p 8081:8081 \
-p 8082:8082 \
wmx-public.gitlab.yandexcloud.net:5050/wmx-private/wmx-api-firewall/apifw-manager:latest
Минимальный набор переменных окружения для старта:
Переменная среды | Описание |
---|---|
MONGO_URI | Строка подключения к MongoDB |
URL_MANAGER | Адрес и порт, на который будут подключаться ноды по gRPC. Схему (http://, https://) указывать не нужно. Порт по-умолчанию 8081 . |
LICENSE_KEY | Лицензионный ключ |
Полный набор переменных окружения →
-
Проверьте доступность сервера и откройте необходимые порты для связи с инстансами ПроAPI Защиты. Убедитесь, что открыты следующие порты:
- Порт 8081 (TCP) для GRPC-соединений с нодами
- Порт 8082 (TCP) для взаимодействия с WEB UI по HTTP
-
Вы можете запустить контейнер api-fw-manager и контейнер с WEB UI рядом, в одной docker сети: так не потребуется открывать порт 8082 наружу.
Обратите внимание
При первом запуске api-fw-manager в лог контейнера будет выведен сгенерированный случайным образом пароль администратора. Сохраните его для дальнейшего использования.
Шаг 6. Развертывание WEB UI¶
- Свяжите Web UI с бэкендом Консоли управления ПроAPI Защита, установив значения переменных окружения
API_BASE_URL
иAPI_BACKEND_URL
.
Запуск контейнера с WEB UI:
docker pull wmx-public.gitlab.yandexcloud.net:5050/wmx-private/api-firewall-manager-ui:latest
docker run -d \
--name manager_ui \
-e API_BASE_URL=http://apifw.webmonitorx.dev/api/
-e API_BACKEND_URL=http://api.apifw.webmonitorx.dev:8082/api/
-p 80:80
-p 443:443
wmx-public.gitlab.yandexcloud.net:5050/wmx-private/wmx-api-firewall/manager-ui:latest
- После успешного выполнения этих команд контейнер с Web UI будет запущен и доступен по указанным портам. Теперь можно открыть Web UI в браузере, перейдя по адресу
http://<IP_адрес_сервера>
.
Переменные окружения:
Переменная среды | Описание |
---|---|
API_BASE_URL | URL, который будет использоваться для формирования запросов к API. Должен соответствовать URL, на котором у вас развернут WEB UI, но с /api на конце |
API_BACKEND_URL | URL для проксирования запроса от WEB UI на backend. На этот URL встроенный в WEB UI NGINX будет делать proxy_pass |
По умолчанию WEB UI работает по http, при необходимости вы можете примонтировать внутрь контейнера свою конфигурацию NGINX и SSL сертификаты.
Пример конфигурационного файла NGINX: compose-example. Используйте его как основу для создания своего собственного конфига.