Как задеплоить вайбкод-проект за 10 минут: пошаговый гайд 2026

Обновлено:

Вайбкодинг ускоряет разработку — прототип готов за вечер. Деплой не должен стать узким местом: на современных платформах путь от git push до рабочего URL занимает считанные минуты. Ниже три сценария с командами, которые можно копировать, и то, о чём обычно забывают, — где будут жить данные и как их не потерять.

Шаг 0: чеклист перед деплоем

Перед первым деплоем проверьте:

# 1. Проект собирается локально без ошибок
npm run build

# 2. Переменные окружения описаны в .env.example
cat .env.example

# 3. .gitignore включает .env и node_modules
grep -E "\.env|node_modules" .gitignore

# 4. Если в базе уже есть данные — сохраните копию
dbsend backup ./data.db -d "$DBSEND_DATABASE_ID" -e sqlite -l "pre-production-deploy"

Убедитесь, что в репозитории нет секретов (API-ключей, паролей), в том числе в истории коммитов. Для проверки подойдёт gitleaks:

gitleaks detect --source .

Сценарий 1: Next.js на Vercel

Vercel — создатели Next.js, интеграция максимальная.

Шаг 1: Подготовить репозиторий

git init
git add .
git commit -m "initial commit"
git remote add origin https://github.com/username/my-project.git
git push -u origin main

Шаг 2: Задеплоить через Vercel CLI

npm i -g vercel

# Первый запуск: CLI спросит аккаунт, имя проекта и папку с кодом
vercel

# Продакшн-деплой
vercel --prod

Через пару минут проект доступен по адресу вида https://my-project.vercel.app.

Шаг 3: Добавить переменные окружения

vercel env add DATABASE_URL production
vercel env add NEXTAUTH_SECRET production
# Или в dashboard: Project → Settings → Environment Variables

Шаг 4: Автодеплой при push

Если проект подключён к GitHub, Vercel деплоит каждый push в main, а пул-реквесты получают Preview URL.

git add .
git commit -m "update landing page"
git push  # → запустится автодеплой

Важно: у Vercel нет постоянного диска. SQLite-файл рядом с приложением не переживёт следующий деплой — базу нужно вынести во внешний сервис (PostgreSQL у облачного провайдера, Turso и т. п.).


Сценарий 2: PocketBase на Amvera

Amvera — российская PaaS-платформа с git-деплоем.

Шаг 1: Подготовить Dockerfile

FROM alpine:3.20

# Актуальную версию смотрите на странице релизов PocketBase
ARG PB_VERSION=0.37.5

RUN apk add --no-cache unzip ca-certificates wget && \
    wget -q "https://github.com/pocketbase/pocketbase/releases/download/v${PB_VERSION}/pocketbase_${PB_VERSION}_linux_amd64.zip" && \
    unzip "pocketbase_${PB_VERSION}_linux_amd64.zip" -d / && \
    rm "pocketbase_${PB_VERSION}_linux_amd64.zip"

EXPOSE 8090

CMD ["/pocketbase", "serve", "--http=0.0.0.0:8090", "--dir=/data/pb_data"]
# amvera.yml — формат полей сверяйте с документацией Amvera
meta:
  environment: docker
  toolchain:
    name: docker
    version: latest
build:
  dockerfile: Dockerfile
run:
  persistenceMount: /data
  containerPort: 8090

Ключевой момент — --dir=/data/pb_data: база и загруженные файлы должны лежать в постоянном хранилище, иначе пропадут при пересборке.

Шаг 2: Задеплоить

# Адрес репозитория показан в кабинете Amvera
git remote add amvera https://git.amvera.ru/username/my-pocketbase
git push amvera main

После сборки PocketBase доступен по техническому домену Amvera; админ-панель — по пути /_/.

Шаг 3: Настроить домен

В настройках проекта Amvera добавьте свой домен — SSL-сертификат выпускается автоматически.


Сценарий 3: Fullstack на Coolify (свой VPS)

Coolify — open-source аналог Railway, который вы разворачиваете на своём VPS.

Установка Coolify (один раз)

# На чистом VPS с Ubuntu
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash

# Панель откроется на http://VPS_IP:8000
# Создайте аккаунт администратора и добавьте сервер

Деплой Next.js-проекта

В Coolify UI:

  1. New Resource → Application → GitHub.
  2. Выбрать репозиторий и ветку.
  3. Сборка через Nixpacks определит Next.js автоматически (или используйте свой Dockerfile).
  4. Environment Variables → вставить переменные.
  5. Deploy.

Результат: приложение на вашем домене с SSL и автодеплоем при push.

Добавить PocketBase рядом

В Coolify: New Resource → Service → найдите PocketBase в каталоге готовых сервисов. Coolify создаст постоянный том для данных; назначьте домен вроде api.your-domain.com. Оба сервиса живут на одном VPS.


Сравнение платформ деплоя

| Платформа | Оплата из России | Серверы в России | Постоянный диск | Автодеплой | |---|---|---|---|---| | Vercel | Иностранная карта | Нет | Нет | Да | | Amvera | Рубли | Да | Да (/data) | Да | | Coolify (self-hosted) | Рубли (за VPS) | Если VPS в России | Docker-тома | Да | | Railway | Иностранная карта | Нет | Volumes | Да | | Timeweb Cloud Apps | Рубли | Да | Зависит от типа приложения | Да | | Yandex Cloud | Рубли | Да | Через управляемые БД | Через CI/CD |

Тарифы меняются — актуальные цены смотрите на сайтах платформ.

Где живут данные и как их бэкапить

Код всегда восстановится из git. База — нет. В каждом сценарии данные лежат в своём месте:

  • Vercel: база во внешнем сервисе (PostgreSQL, Turso и т. п.). Бэкап делается на стороне этого сервиса или вашим pg_dump.
  • Amvera: файлы в /data — у PocketBase это pb_data/data.db и папка storage с загрузками.
  • Coolify: Docker-тома на VPS. Если сервер умрёт, тома умрут вместе с ним — копию нужно держать в другом месте. Как настроить встроенные бэкапы в S3, разобрано в статье бэкап БД в Docker и Coolify.

Для PocketBase копию делайте через .backup или встроенные бэкапы в админке, а не cp живого файла — подробности в статье бэкап PocketBase. Для PostgreSQL — pg_dump отдельным шагом CI перед миграциями:

# GitHub Actions / любой CI, шаг перед деплоем
pg_dump --format=plain "$DATABASE_URL" > /tmp/production.sql
dbsend backup /tmp/production.sql \
  -d "$DBSEND_DATABASE_ID" \
  -e postgresql_dump \
  -l "pre-deploy-${GITHUB_SHA::7}"

Не встраивайте сетевой бэкап в buildCommand Vercel: сборка может перезапускаться. Делайте отдельный job и храните DBSEND_API_KEY в secrets CI. Команды CLI — в документации.

После первого бэкапа один раз восстановите его в пустую базу и убедитесь, что приложение с ней стартует: как проверить, что бэкап рабочий.


Частые вопросы

Как задеплоить Next.js бесплатно?

Бесплатный тариф Vercel Hobby подходит для некоммерческих проектов: автодеплой из GitHub и Preview URL. Для коммерческого использования нужен платный тариф. Для проектов с российской аудиторией рассмотрите Amvera или Coolify на российском VPS.

Как деплоить на Vercel из России?

Деплой через CLI и GitHub работает, но платный тариф требует иностранной карты, а у части российских пользователей сайты на Vercel открываются нестабильно. Если аудитория в России — надёжнее Amvera или Coolify на российском VPS. Подробнее — в статье аналоги Vercel в России.

Что такое Preview Deployment?

Отдельный URL с версией приложения для каждого pull request — можно проверить изменения до мержа в main. Vercel создаёт его автоматически, в Coolify preview-деплои включаются в настройках приложения.

Нужен ли Docker для деплоя?

Не обязательно. Vercel, Railway и Coolify (через Nixpacks) определяют фреймворк сами. Dockerfile нужен для нестандартных стеков или когда вы хотите полностью контролировать сборку — как в примере с PocketBase.

Как деплоить PocketBase в России?

Проще всего — Docker на российском VPS через Coolify или Docker Compose, либо Amvera с постоянным хранилищем. PocketBase — один контейнер, один том для данных, один порт. Подробнее о самом PocketBase — в статье что такое PocketBase.