Skip to content

Установка через CLI

CLI-утилита nrunnerctl предназначена для типового развёртывания NRunner из состава поставочного архива. Утилита выполняет подготовку env-файлов, проверку Docker Compose-конфигурации, запуск, остановку, удаление и просмотр состояния контуров.

Предварительные условия

Перед запуском убедитесь, что на сервере выполнены требования из раздела Подготовка к развёртыванию:

  • установлен Docker Engine;
  • доступна команда docker compose;
  • пользователь имеет права на управление Docker;
  • поставочный архив NRunner распакован на целевом сервере.

Примеры ниже выполняются из корня распакованного архива.

Подготовка утилиты

Назначьте файлу scripts/nrunnerctl право на выполнение:

bash
chmod +x scripts/nrunnerctl

Проверьте доступные команды:

bash
scripts/nrunnerctl help

Утилита поддерживает следующие действия:

КомандаНазначение
scripts/nrunnerctlЗапуск интерактивного режима
scripts/nrunnerctl deploy [all|main|vulndb]Развёртывание выбранного контура
scripts/nrunnerctl status [all|main|vulndb]Просмотр состояния контейнеров
scripts/nrunnerctl stop [all|main|vulndb]Остановка выбранного контура
scripts/nrunnerctl remove [all|main|vulndb]Удаление контейнеров, сетей и томов выбранного контура

Значение main соответствует основному контуру server + client, vulndb соответствует локальной базе уязвимостей, all последовательно обрабатывает оба контура.

Интерактивная установка

Запустите CLI без аргументов:

bash
scripts/nrunnerctl

В интерактивном режиме доступны операции развёртывания, просмотра состояния, остановки и удаления. При первом развёртывании утилита предложит подготовить env-файлы:

  • использовать существующий файл без изменений;
  • создать файл из шаблона;
  • заполнить файл интерактивно.

Если env-файл уже существует и выбран вариант повторного создания, текущий файл сохраняется в резервную копию с суффиксом .bak.<timestamp>

Замените <IP_SERVER> на IP сервера, на котором устанавливается продукт

Неинтерактивная установка

Для автоматизированного развёртывания используйте командный режим.

Развернуть всю систему:

bash
scripts/nrunnerctl deploy all

Развернуть только основной контур:

bash
scripts/nrunnerctl deploy main

Развернуть только контур базы уязвимостей:

bash
scripts/nrunnerctl deploy vulndb

В неинтерактивном режиме отсутствующие env-файлы создаются из шаблонов:

  • compose/main/env.server.example -> compose/main/env.server;
  • compose/main/env.client.example -> compose/main/env.client;
  • compose/vulndb/env.vulndb.example -> compose/vulndb/env.vulndb.

После автоматического создания env-файлов рекомендуется остановить развёртывание, проверить значения секретов, портов и внешних адресов, затем повторить запуск.

Проверка состояния

Проверить оба контура:

bash
scripts/nrunnerctl status all

Проверить только основной контур:

bash
scripts/nrunnerctl status main

Проверить только базу уязвимостей:

bash
scripts/nrunnerctl status vulndb

Отчёт содержит состояние контейнеров и опубликованные порты. Для диагностики отдельных сервисов используйте команды Docker Compose из раздела Установка через Docker Compose.

Остановка и удаление

Остановить систему без удаления данных:

bash
scripts/nrunnerctl stop all

Удалить контейнеры, сети и тома:

bash
scripts/nrunnerctl remove all

Команда remove удаляет Docker-тома соответствующего контура. Перед её выполнением необходимо убедиться, что резервное копирование данных выполнено в соответствии с эксплуатационным регламентом.

Проверка результата

После успешного запуска основного контура должны быть доступны:

АдресНазначение
http://<host>:<NRUNNER_CLIENT_HTTP_PORT>/Web-интерфейс NRunner
http://<host>:<NRUNNER_SERVER_HTTP_PORT>/api/v1HTTP API сервера

Если развёрнут локальный контур базы уязвимостей, дополнительно проверьте:

bash
curl -fsS http://<host>:<VULN_API_HTTP_PORT>/api/v1/readiness

Дополнительная настройка

Перед вводом системы в эксплуатацию обязательно проверьте значения переменных в разделе Конфигурация системы. Особое внимание следует уделить JWT_SECRET, CREDENTIALS_MASTER_KEY, REDIS_PASSWORD, публичным адресам backend и параметрам подключения к vulnerability-сервису.

Документация NRunner