РазвертываниеДеплой локального кода

Развертывание из локального кода

Когда ваш код не на GitHub — или вы просто хотите итерироваться быстрее — загрузите текущую директорию напрямую с помощью lizard up. Она упаковывает вашу рабочую директорию в tarball, отправляет на узлы сборки и развертывает.

Развернуть текущую директорию

lizard up
  • Загружает текущую директорию как tarball, уважая .gitignore (отключается через --no-gitignore).
  • Принудительно включает sourceType=upload.
  • Выводит логи сборки через SSE и печатает живой URL по завершении.

Если директория ещё не привязана к проекту, up сначала запускает init. В интерактивном TTY это происходит в диалоговом режиме; в неинтерактивном (CI) проект не создаётся молча — команда выдаёт ошибку и просит выполнить lizard init --name <project> (или передать --name). Это защищает от появления пустого проекта из-за опечатки.

Основные флаги

ФлагНазначение
-s, --service <name>Выбрать/создать конкретный сервис
--build-command <cmd>Переопределить команду сборки
--start-command <cmd>Переопределить команду запуска
--pre-deploy-command <cmd>Запустить один раз перед каждым деплоем (например, миграции)
--port <number>Порт контейнера (0 = режим воркера)
--region <code>Регион для развертывания
-d, --detachЗапустить деплой и выйти без стриминга логов
-c, --ciВывод, дружественный к CI
--no-gitignoreЗагрузить всё, игнорируя .gitignore
lizard up --service api --start-command "node server.js" --port 8080

Установка команд сборки и запуска

Передача --build-command или --start-command переключает сервис на путь синтезированного Dockerfile. На этом пути Procfile и package.json scripts.start не считываются — задавайте команду запуска явно (или включите CMD в свой Dockerfile). Подробнее в разделе Конвейер сборки. Чаще всего это касается Python: Django, Flask и FastAPI требуют разную строку gunicorn или uvicorn.

Повторное развертывание upload-сервиса

lizard up повторно загружает и пересобирает. Чтобы пересобрать последнюю загрузку с текущими переменными без повторной загрузки:

lizard redeploy --service api

Headless / CI

Для неинтерактивных сценариев явно привяжите проект перед деплоем:

export LIZARD_TOKEN=lzd_xxx
lizard init --name my-project
lizard up --ci --service api

Когда лучше выбрать GitHub

Загрузка отлично подходит для быстрой итерации и ситуаций без удалённого репозитория. Для всего долгоживущего предпочитайте источник из GitHub, чтобы пуши автоматически переразвертывали приложение и у вас была чистая история деплоев.

См. также