Централизованный терминал
Netuno позволяет объединить вывод данных (логи) нескольких команд и процессов в одном окне терминала — том же, где работает основной сервер.
В современных процессах разработки, где часто приходится работать с несколькими технологиями одновременно, Netuno выступает в роли оркестратора логов и может содержать несколько команд, настроенных на автоматический параллельный запуск, например процессы фронтенда на ReactJS, Angular, Vue и любых других технологиях.
Можно запустить любой процесс — достаточно определить его команду; например, можно даже интегрировать другой сервер вспомогательного API REST, разработанного на любой другой технологии.
Конфигурация
Чтобы интегрировать внешние процессы, нужно отредактировать файл конфигурации среды вашего приложения. В этом руководстве мы будем использовать среду разработки в качестве примера.
Расположение файла
Перейдите в папку вашего приложения и найдите файл:
- 📂
config/_development.json
Структура конфигурации
Конфигурация выполняется через ключ "commands", который представляет собой массив объектов. Это позволяет запускать несколько сервисов параллельно.
Откройте файл и проверьте, существует ли уже ключ "commands". Если нет, добавьте в конец файла (соблюдая формат JSON) следующую конфигурацию:
{
...
"commands": [
{
"path": "интерфейс",
"command": "bun run watch",
"enabled": true
},
{
"env": [ "PORT=21030", "WDS_SOCKET_PORT=21030" ],
"path": "сайт",
"install": "bun install",
"command": "bun run dev",
"enabled": true
}
],
...
}
Примечание: В приведённом выше примере мы настроили одну команду для папки "интерфейс" и другую для папки "сайт"; обе используют менеджер пакетов bun.
Справочник параметров
Пользовательский интерфейс (UI): выполняет bun run watch в директории интерфейс вашего приложения.
Сайт: выполняет bun run dev в папке сайт.
env
Определяет переменные среды, необходимые процессу для работы. Можно задать несколько переменных одновременно.
path
Определяет путь к папкам, где будет выполняться команда, относительно корня приложения.
install
Netuno имеет встроенную логику для управления зависимостями пакетов:
-
Автоматическое обнаружение: если ваша команда начинается с
npm,bun,pnpmилиyarn, Netuno проверяет, существует ли папкаnode_modules. -
Интеллектуальное выполнение: если папка не найдена, соответствующая команда установки (например,
bun install) автоматически выполняется перед запуском основного процесса. -
Настройка: при ручном определении параметра
installстандартное обнаружение заменяется вашей пользовательской конфигурацией.
command
Основная команда для выполнения. Весь вывод данных (output) будет интегрирован с Netuno.
enabled
Определяет, должна ли команда (true) или нет (false) автоматически запускаться вместе с приложением.
Заключение
Централизация команд в Netuno значительно упрощает рабочий процесс. Единый обзор позволяет собрать всю информацию о параллельных процессах в одном терминале, упрощая мониторинг в реальном времени.
Безопасное завершение гарантирует, что при остановке сервера Netuno все настроенные вспомогательные процессы также автоматически завершаются, предотвращая фоновые процессы и зависания портов.