CI/CD для Next.js: GitHub Actions и автодеплой

Сборка в CI и выкладка на VPS по пушу в main.

Вернуться в гайды

В Actions собираете проект, по зелёной сборке заходите на VPS по SSH и обновляете контейнеры или PM2.

Гайд «CI/CD для Next.js: GitHub Actions и автодеплой» — про один маршрут в Cursor, раздел «Автоматизация и деплой». Сборка в CI и выкладка на VPS по пушу в main.

CI/CD для Next.js: GitHub Actions и автодеплой

Зачем он нужен

Сборка в CI и выкладка на VPS по пушу в main. В Actions собираете проект, по зелёной сборке заходите на VPS по SSH и обновляете контейнеры или PM2.

Ниже тот же маршрут, что и в короткой версии гайда, только с проверкой в конце. Схема показывает порядок, следующая картинка — экран, с которым сверяют diff.

Как идти по шагам

Коротко

В Actions собираете проект, по зелёной сборке заходите на VPS по SSH и обновляете контейнеры или PM2. Секреты — только в GitHub Secrets, не в репозитории.

Подробнее

Минимальный пайплайн:

  1. Триггер: push в main.
  2. Job: npm ci, npm run build (и тесты, если есть).
  3. Job деплоя: SSH на сервер, git pull, сборка или docker compose up -d --build.

На сервере ключ деплоя с ограниченными правами, не root-пароль в секретах. Для Docker удобно выкладывать только нужный сервис: --no-deps frontend.

Не собирайте прод-секреты в образ. .env живёт на VPS. Если фронт ходит в API на этапе build, либо force-dynamic, либо сначала поднимаете backend.

Ошибки CI читайте в логе job, не на глаз на сервере. Если сборка зелёная, а сайт старый — деплой не дошёл: проверьте SSH, путь и что перезапустился нужный процесс.

Ключевые выводы

CI ловит поломку до выкладки. Деплой — отдельный шаг по SSH. Секреты в GitHub Secrets и на сервере, не в git.

FAQ

Нужен ли GitHub Actions, если деплою руками?

Не обязателен. Он экономит время и не даёт выкатить код, который не собирается.

Можно ли деплоить с ноутбука скриптом?

Да. Actions удобнее, когда в команде несколько людей и нужен одинаковый путь.

Почему build в CI падает, а локально нет?

Другая версия Node или нет переменных окружения. Зафиксируйте версию в workflow и проверьте Secrets.

CI/CD для Next.js: GitHub Actions и автодеплой

Что проверить руками

Ответ агента не считается результатом. Для «CI/CD для Next.js: GitHub Actions и автодеплой» проверка такая: откройте файл, страницу или лог и убедитесь, что изменилось именно то, о чём гайд. Секреты — только в GitHub Secrets, не в репозитории.

Если видите лишние файлы, чужой пакет или секрет в diff — правку не принимайте. Вернитесь к шагу, где задача ещё была узкой.

Чего в этом гайде не делать

Не расширяйте «CI/CD для Next.js: GitHub Actions и автодеплой» на весь репозиторий. Минимальный пайплайн: Триггер: push в main. Соседняя тема — соседний гайд. Сюда не входят карты, пароли и чужие кабинеты.

Короткий маршрут

  1. Коротко
  2. Подробнее
  3. Ключевые выводы
  4. FAQ

В Actions собираете проект, по зелёной сборке заходите на VPS по SSH и обновляете контейнеры или PM2. Секреты — только в GitHub Secrets, не в репозитории. Минимальный пайплайн: Триггер: push в main.

Порядок для «CI/CD для Next.js: GitHub Actions и автодеплой» такой. Сначала рамка: Сборка в CI и выкладка на VPS по пушу в main. Потом один проход агента и ваша проверка результата, а не отчёт модели.

Если агент ушёл в сторону, остановите его и повторите последний шаг из списка. Не просите переписать всю историю чата заново.

В разделе «Автоматизация и деплой» этот маршрут заканчивается, когда проверка из гайда прошла. Секреты — только в GitHub Secrets, не в репозитории.

Перед Accept сверьте diff со схемой шагов. Для «CI/CD для Next.js: GitHub Actions и автодеплой» достаточно одного узкого изменения.

Мы используем файлы cookie для того, чтобы предоставить пользователям больше возможностей при посещении сайта. Оставаясь на сайте, Вы соглашаетесь на обработку файлов cookie. Подробнее об условиях использования.