Управление локальным сервером
Используйтеyarn twenty docker:* для управления локальным контейнером Twenty:
Данные сохраняются между перезапусками в двух томах Docker (
twenty-app-dev-data для PostgreSQL, twenty-app-dev-storage для файлов). Используйте reset, чтобы стереть всё.
Фиксация версии сервера
Когда версия не передана,docker:start определяет версию из диапазона engines.twenty вашего приложения в package.json — того же диапазона, по которому сервер выполняет проверку при установке вашего приложения. Он запускает самый новый опубликованный образ twenty-app-dev, который удовлетворяет диапазону, и использует latest, если поле отсутствует или ни одна опубликованная версия не совпадает:
yarn twenty docker:start 2.3.0. Если контейнер уже существует с другой версией, docker:start обновляет его на месте (пересоздаёт контейнер с сохранением томов данных).
Обновление образа сервера
yarn twenty docker:upgrade скачивает последний образ, сравнивает дайджесты и пересоздаёт контейнер только если действительно что-то изменилось. Тома сохраняются — заменяется только контейнер. Если был скачан новый образ и контейнер работал, при обновлении автоматически запускается новый контейнер; затем выполните yarn twenty docker:start, чтобы дождаться его готовности.
yarn twenty docker:status (эта команда показывает APP_VERSION, встроенную в контейнер).
Запуск параллельного тестового экземпляра
Передайте--test любой команде docker:*, чтобы управлять вторым, полностью изолированным экземпляром — это полезно для запуска интеграционных тестов или экспериментов, не затрагивая ваши основные данные разработки:
Тестовый экземпляр запускается в собственном контейнере Docker (
twenty-app-dev-test) с выделенными томами (twenty-app-dev-test-data, twenty-app-dev-test-storage) и собственной конфигурацией, поэтому он может работать параллельно с вашим основным экземпляром без конфликтов. Совместите --test с --port, чтобы переопределить значение по умолчанию (2021).
Ручная настройка (без генератора каркаса)
Пропустите генератор каркаса, если вы добавляете SDK в существующий проект:package.json:
yarn twenty dev, yarn twenty docker:start и остальные команды.
Не устанавливайте
twenty-sdk глобально — фиксируйте версию в каждом проекте, чтобы каждое приложение использовало свою собственную версию.