Развертывание из локального кода
Команда lizard up загружает текущую папку напрямую. Используйте её, если код не на GitHub или вы хотите быстро проверить изменения. Команда упаковывает папку в tarball, отправляет на узлы сборки и запускает деплой. Команды для каждого стека см. в руководствах по React, Vue, Astro, SvelteKit, Hugo, Docusaurus, VitePress, FastAPI и Streamlit.
Развернуть текущую директорию
lizard up- Загружает текущую директорию как tarball. Внутри git-репозитория учитывает
.gitignore. Вне git или с--no-gitignoreпропускает только фиксированный список папок сборки и зависимостей (node_modules,.git,dist,.next,build,__pycache__,.venv,venv,.cache,coverage,.turbo,.vercel), а также.DS_Store,*.pyc,*.pyoи*.log, поэтому файлы.envзагружаются. Предварительно выполнитеgit initили уберите секреты из директории. - Принудительно включает
sourceType=upload. - Выводит логи сборки через SSE и печатает живой URL по завершении.
Если папка ещё не привязана к проекту, up привязывает её к проекту по умолчанию вашего аккаунта (самому старому проекту в вашем личном рабочем пространстве; у новых аккаунтов это <username>'s Project) и сообщает об этом. Команда ничего не спрашивает ни в терминале, ни в CI. Чтобы развернуть код в другом проекте, сначала выполните lizard init --name <project> или передайте --project <name>. lizard init --force перепривязывает папку.
Без --service команда up развёртывает код в сервис, привязанный к папке. Если такого нет, она берёт имя из package.json или имя папки (в терминале просит его подтвердить). Если в проекте уже есть сервис с таким именем, up развёртывает код в него, даже если это GitHub-сервис, и переключает его на sourceType=upload. Порт этому сервису она тоже задаёт как новому: --port, строка EXPOSE из локального файла или 3000. Иначе она создаёт сервис. Чтобы выбрать сервис, передайте --service <name>; имя, которого ещё нет, создаёт такой сервис.
Основные флаги
| Флаг | Назначение |
|---|---|
-s, --service <name> | Сервис для деплоя; новое имя создаёт сервис |
-p, --project <name> | Развернуть в этот проект вместо привязанного или проекта по умолчанию |
--build-command <cmd> | Переопределить команду сборки |
--start-command <cmd> | Переопределить команду запуска |
--pre-deploy-command <cmd> | Запускать в начале каждого контейнера перед командой запуска; требует --start-command (см. конфигурация сборки) |
--port <number> | Порт контейнера (0 = режим воркера) |
--region <code> | Регион для нового сервиса (для существующих сервисов игнорируется) |
-d, --detach | Запустить деплой и выйти без стриминга логов |
-c, --ci | Вывод, дружественный к CI |
--no-gitignore | Не учитывать .gitignore и взять вместо него фиксированный список исключений (собранные dist/ и build/ всё равно не загружаются) |
lizard up --service api --start-command "node server.js" --port 8080Установка команд сборки и запуска
Передача --build-command или --start-command сохраняет её в сервисе и переключает сервис на путь синтезированного Dockerfile, если не задан dockerfilePath. На этом пути Procfile и package.json scripts.start не считываются — задавайте команду запуска явно. Подробнее в разделе Конвейер сборки. Чаще всего это касается Python: Django, Flask и FastAPI требуют разную строку gunicorn или uvicorn.
Повторное развертывание upload-сервиса
lizard up повторно загружает и пересобирает. Чтобы пересобрать последнюю загрузку с текущими переменными без повторной загрузки:
lizard redeploy --service apiHeadless / CI
В CI непривязанная папка тоже развёртывается в проект по умолчанию. Чтобы развернуть код в выбранном проекте, сначала привяжите его:
export LIZARD_TOKEN=liz_xxx # create one with: lizard keys create <name>
lizard init --name my-project
lizard up --ci --service apiКогда лучше выбрать GitHub
Загрузка отлично подходит для быстрой итерации и ситуаций без удалённого репозитория. Для всего долгоживущего предпочитайте источник из GitHub, чтобы пуши автоматически переразвертывали приложение и у вас была чистая история деплоев.
См. также
lizard up— полный справочник команд.- Конвейер сборки — как определяется и собирается ваш стек.
Обновлено