nb init
Инициализирует текущее рабочее пространство, чтобы агент для разработки мог подключаться к NocoBase и использовать его.
nb init может установить новое локальное приложение NocoBase, а также сохранить параметры подключения уже существующего приложения.
Кроме того, nb init по умолчанию синхронизирует навыки ИИ-разработки NocoBase. Добавлять --skip-skills нужно только если вы уже самостоятельно управляете навыками либо запускаете команду в CI или офлайн-среде.
Использование
Интерактивные режимы
nb init поддерживает три интерактивных режима:
nb init:пошаговое выполнение настройки в терминалеnb init --ui:открывает форму в локальном браузере и завершает настройку через визуальный мастерnb init --yes --env app1:пропускает запросы и сразу использует флаги; параметры, не переданные явно, обрабатываются со значениями по умолчанию
Режим --yes подходит для скриптов, CI/CD и других неинтерактивных сценариев. В этом режиме --env <envName> обязателен. Как правило, по умолчанию будет установлено новое локальное приложение; если вы не укажете --source, источником установки по умолчанию будет docker.
Возобновление прерванной инициализации
Для сценариев установки конфигурация окружения сначала сохраняется, а затем выполняются загрузка, настройка базы данных и установка приложения. Если процесс прервался, можно продолжить:
--resume применим только к процессам инициализации, где конфигурация окружения уже была сохранена, и требует явной передачи --env.
Сначала подготовить окружение, а приложение установить позже
--prepare-only предназначен для сценариев, где сначала нужно п одготовить окружение, затем активировать лицензию, и только после этого установить и запустить приложение.
Если вы хотите сначала сохранить конфигурацию окружения и подготовить базу данных, но отложить загрузку зависимостей, фактическую установку приложения и первый запуск, можно использовать:
Этот режим доступен для сценариев локальной установки, включая мастер --ui. Он недоступен для сценариев удалённого подключения. CLI сохранит окружение как подготовленное, поэтому позже вы сможете продолжить с помощью такого сценария:
После этого nb app start завершит первую установку и переведёт окружение из подготовленного состояния в обычное установленное состояние.
Структура каталога установки
Полный путь можно посмотреть через nb env info app1 --field app.appPath.
По умолчанию CLI организует локальные файлы в app-path по следующему соглашению:
Обычно:
.nb/хранит метаданные, управляемые CLI. Скрипт, переданный через--hook-script, копируется в<app-path>/.nb/hooks.mjs, чтобы последующиеnb app upgradeи локальное восстановление исходного кода могли использовать его повторноsource/в основном соответствует локальному каталогу приложения для окружений типов npm / Git. Для Docker-окружений CLI тоже сохраняет эту схему путей по умолчанию, но в большинстве случаев вам не нужно заботиться об этом вручную. При обновлении обратите особое внимание: каталогsource/будет удалён и загружен заново, поэтому не храните здесь файлы, которые нужно сохранитьstorage/используется для данных среды выполнения, например встроенной базы данных, плагинов, логов и т. д..env— необязательный файл переменных окружения приложения. Добавлять его в<app-path>/.envнужно только если вы хотите настроить свои переменные окружения; если файл существует, источники установки Docker, npm и Git по умолчанию будут его читать
Это соглашение CLI о каталогах по умолчанию. Для разных источников установки, плагинов и этапов выполнения фактически создаваемое содержимое каталогов может отличаться.
Примечания
--uiнельзя использовать вместе с--yes--uiтакже нельзя использовать вместе с--resume--ui-hostи--ui-portможно использовать только вместе с--ui--skip-authнельзя использовать вместе с--access-tokenили--token
Быстрая навигация по Steps
В разных путях настройки отображаются разные шаги. Например, при подключении к существующему приложению обычно используются только «Начало настройки» и «Удалённое подключение».
Если вы проходите локальный UI-мастер шаг за шагом, можете сначала воспользоваться таблицей ниже для быстрой навигации:
Параметры
Параметров довольно много, поэтому понятнее рассматривать их по сценариям использования.
Под “значением по умолчанию” ниже имеется в виду значение или поведение, которое nb init обычно использует, если параметр опущен.
Базовые и интерактивные
Подключение существующего приложения
Базовые параметры локальной установки
Параметры базы данных
Параметры загрузки и исходного кода
Примеры
Ниже приведены несколько самых распространённых вариантов использования.
Пошаговое выполнение мастера в терминале
Открытие мастера в локальном браузере
Сначала подготовить, затем активировать лицензию и запустить позже
Неинтерактивная установка нового локального приложения
Если не указывать --source, обычно в качестве источника установки используется Docker.
Расширение процесса установки с помощью модуля хука
Если во время установки нужно подготовить дополнительные файлы, передайте локальный ESM-модуль через --hook-script:
CLI копирует этот файл в <app-path>/.nb/hooks.mjs и сохраняет hookScript: ".nb/hooks.mjs" в конфигурации окружения. Последующие nb app start, nb app restart и nb app upgrade используют его из этого места.
Файл хука должен экспортировать объект по умолчанию. Реализуйте только нужные методы:
beforeDependencyInstallприменяется только к источникам npm/Git и запускается прямо перед настоящимyarn install; источник Docker его не запускаетbeforeAppInstallзапускается перед командами установки или обновления на уровне приложения и применяется к источникам npm/Git/DockerafterAppStartзапускается после фактического старта приложения и успешного__health_check; его могут вызватьnb app start,nb app restartиnb app upgrade
--prepare-only только сохраняет конфигурацию окружения и копирует файл хука. Хуки при этом не выполняются. Когда позже вы впервые запустите nb app start, CLI выполнит хуки первой установки с context.phase равным init и context.command равным app:start.
context содержит сведения о жизненном цикле, например phase, command, source, version, appPath, sourcePath, storagePath, hookScript и envConfig. Если хук выбросит ошибку, текущая CLI-команда завершится с ошибкой. Так как afterAppStart может выполняться повторно при start, restart и upgrade, сделайте его идемпотентным.
Быстрая устан овка и использование аутентификации basic
Если вы хотите в неинтерактивном режиме быстро установить локальное приложение и сразу после установки сохранить аутентификацию basic, можно написать так. Тогда не нужно будет открывать браузер для завершения OAuth.
Если использовать стандартную учётную запись администратора из режима --yes, самый короткий вариант такой.
Если не указано, имя администратора по умолчанию — nocobase, а пароль по умолчанию — admin123:
Если вы хотите одновременно настроить собственную учётную запись администратора, можно написать так:

