Как задеплоить проект из Cursor на свой сервер
Проект из Cursor работает на ноутбуке через npm run dev, а на сервере ему нужен продакшн-режим: сборка, переменные окружения, менеджер процессов, nginx и HTTPS. Минимальный надёжный деплой — VPS с Ubuntu, Node LTS, PM2 или systemd, nginx как прокси и сертификат Let's Encrypt.
Первая помощь и как чиним
- 1Подготовить проект
Проверяем, что есть npm run build и npm start, выносим ключи в .env и добавляем .env.example.
- 2Настроить сервер
Ubuntu, отдельный пользователь, вход по SSH-ключу, firewall на 22/80/443, Node LTS.
- 3Запустить приложение
Клонируем из git, собираем, запускаем под PM2 или systemd с автозапуском.
- 4Nginx, домен и HTTPS
Проксируем домен на приложение, выпускаем сертификат Let's Encrypt с автопродлением.
- 5Деплой одной командой
Пишем скрипт или GitHub Actions: pull, сборка, перезапуск — без ручной магии.
Чинить самому или отдать в «аптечку»
Мы уже наступили на эти грабли — вам не придётся
Аптечка: что с проектом?
3 вопроса — и мы скажем, сколько стоит починка. Чек-лист безопасности проекта в подарок.
Интервью с собственником и РОПом, аудит текущей CRM и источников заявок.
1–3 дняВоронки, роли, точки контроля. Согласуем до того, как что-то настраивать.
3–5 днейНастраиваем Битрикс24 и дописываем недостающие инструменты. Демо каждую неделю.
1–4 неделиОбучение, база знаний, поддержка. Дорабатываем, пока цифры не поедут вверх.
дальше — с вамиПодробнееразвёрнутое описание, этапы и нюансы
Cursor отлично помогает написать код, но выкладка на сервер — отдельная дисциплина, и ИИ здесь часто советует половину шагов. Итог знакомый: сайт открывается, пока открыт терминал, падает ночью и теряет HTTPS через три месяца. Ниже — как выглядит нормальный деплой и что можно проверить самому.
Почему так происходит
В Cursor вы работаете в режиме разработки: горячая перезагрузка, ключи в локальном .env, база на localhost. На сервере всё иначе: нет вашего .env, порт закрыт firewall, процесс никто не перезапустит, а браузеры требуют HTTPS. ИИ видит только код проекта и не знает, какой у вас сервер, поэтому выдаёт общие инструкции, которые ломаются на первой же отличающейся детали.
Что проверить самому
- В
package.jsonесть скриптыbuildиstart, иnpm run build && npm startработает у вас локально. - Все ключи читаются из
process.env, а.envуказан в.gitignore. - Приложение берёт порт из переменной
PORT, а не жёстко3000. - В коде нет
http://localhostв адресах API — их должна задавать переменная. - Есть доступ к серверу по SSH-ключу, а не только паролю.
- Домен куплен, и вы знаете, где управлять его DNS.
Минимальная связка nginx и приложения выглядит так:
server {
server_name example.kz;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
После этого sudo certbot --nginx -d example.kz выпускает сертификат и сам настраивает редирект на HTTPS. Приложение запускается через pm2 start npm --name app -- start, затем pm2 save и pm2 startup, чтобы оно поднималось после перезагрузки.
Когда звать разработчика. Если проект — статический сайт или простое приложение без базы, по этой схеме его вполне можно выложить самому, а ИИ поможет с деталями. Помощь нужна, когда есть база данных, загрузка файлов, фоновые задачи, несколько сервисов, или когда сервер будет хранить персональные данные клиентов. Ошибки в настройке сервера редко видны сразу: открытый наружу порт базы, вход по паролю root или отсутствие обновлений безопасности проявляются только тогда, когда сервер уже взломан.
Как чиним мы
Сначала диагностика: собирается ли проект в продакшн-режиме, где база, какие внешние сервисы и ключи нужны. Затем готовим сервер с базовой защитой: отдельный пользователь, SSH-ключи, firewall, автообновления безопасности. Ставим приложение, базу, nginx, сертификат, настраиваем логи и деплой одной командой, чтобы следующая правка из Cursor выезжала на прод за минуту и без риска. Отдаём доступы и короткую инструкцию. Если по дороге всплывают ошибки в коде, сначала сообщаем и согласуем. Подробно об услуге — на странице «Аптечка вайб-кода», а правила, которые не дадут проекту развалиться после деплоя, — в статье «Почему вайб-код ломается».
Сколько стоит
Диагностика — 50 000 ₸, деплой с сервером, доменом и HTTPS — 50 000 ₸, итого от 100 000 ₸ для небольшого проекта. Стоимость самого VPS оплачивается провайдеру отдельно. Если проект не собирается, добавляется запуск и сборка — 40 000 ₸. Рассчитайте свой вариант в калькуляторе.
Частые вопросы
Можно ли просто запустить npm run dev на сервере?
Технически да, но так нельзя: dev-режим медленный, не оптимизирован, иногда показывает исходники и ошибки посетителям и умирает вместе с SSH-сессией.
Какой сервер выбрать для небольшого проекта?
Для типичного Node-приложения с базой хватает VPS на 2 ядра и 2–4 ГБ памяти. Для домена .kz сервер по правилам должен стоять в Казахстане.
Vercel или свой VPS?
Vercel удобен для Next.js без своей базы. Если есть база, файлы, фоновые задачи или требования к хранению данных в РК, свой сервер обычно проще и дешевле.
Сделаем так же у вас
Короткий созвон — и вы знаете срок и цену. Или посчитайте сами за 2 минуты.