Сайт ↗
Разделы документации
Эксплуатация · 0.8.1

Dev-local: локальная разработка

Запустите backend и интерфейс на компьютере, а PostgreSQL — в Docker.

На этой странице

Dev-local нужен для работы с кодом. Backend и интерфейс запускаются на компьютере, PostgreSQL — в Docker. Все команды ниже выполняйте в корне сгенерированного проекта.

1. Подготовьте проект

Установите Go, Node.js/npm, Make и Docker. Запустите Docker. В Generator UI включите Docker в Deployment, сохраните настройки и выполните Generate.

2. Запустите приложение

make dev

Команда подготовит .env, запустит PostgreSQL, применит миграции и предложит создать первого суперадминистратора. Введите свой пароль: готового пароля нет, ввод скрыт. Затем запустятся backend и Vite.

После строки stage=runtime откройте систему администрирования: http://127.0.0.1:5173. API по умолчанию работает на http://127.0.0.1:8081. Если адреса менялись, используйте значения из вывода команды.

Оставьте терминал открытым: в нём работают процессы и выводятся их логи.

3. Вносите изменения

Контент редактируйте в системе администрирования — генерация и сборка для этого не нужны. Поля, связи и правила доступа меняйте в Generator UI, затем выполняйте Generate. Свой код развивайте в custom-зонах параллельно с изменениями модели.

После изменения Go-кода перезапустите backend. После появления новых миграций примените их командой make migrate или при следующем запуске make dev.

Команда Когда нужна
make up Запустить только PostgreSQL
make migrate Применить миграции к dev-БД
make bootstrap-superadmin Создать первого администратора, если его ещё нет
make admin-install Установить зависимости интерфейса
make build Собрать backend и интерфейс без запуска окружения
make down Остановить dev-контейнеры, сохранив данные

Подключение к БД задаётся в .env и переменных процесса. DATABASE_URL должен указывать на вашу dev-БД.

4. Остановите приложение

Нажмите Ctrl+C в терминале с make dev. Команда завершит backend и интерфейс, остановит dev-контейнеры. БД сохранится.

Если вызвать make down в другом терминале, остановятся только контейнеры. Отдельно запущенные Go/Vite-процессы нужно завершить в их терминалах.

Дополнительно: запуск через deploy/control

Если включена генерация deployment-файлов, можно использовать тот же контроллер, что и для других окружений. Он вызовет обычный make dev.

Скопируйте готовый пример один раз:

mkdir -p deploy/environments
cp deploy/generated/examples/dev-local.json deploy/environments/dev.json

Откройте deploy/environments/dev.json. Оставьте environment: dev, preset: dev-local и свой project. В root замените /absolute/project абсолютным путём к проекту; так же исправьте backup.root. Это файл настроек, его вы редактируете сами. При S3 заполните настройки своего хранилища.

bash ./deploy/control check --env dev
bash ./deploy/control up --env dev

В другом терминале доступны:

bash ./deploy/control status --env dev
bash ./deploy/control logs --env dev --service postgres
bash ./deploy/control down --env dev

Для dev-local нет --json, а logs показывает только PostgreSQL. Логи backend и интерфейса остаются в терминале запуска.

Для запуска всех компонентов в Docker откройте Prod-local. У него отдельная БД: записи и изображения из dev не появятся там автоматически.