Установка Vendure на NestJS: production-сервер для e-commerce

Подготовка Vendure к production: установка, настройка и деплой

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Установка Vendure на NestJS: production-сервер для e-commerce
Средний
от 1 дня до 3 дней

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1422
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1288
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    984
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1250
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    988
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    1001

Подготовка Vendure к production: установка, настройка и деплой

Мы — команда с 8-летним опытом в Node.js и 20+ запущенными e-commerce проектами. Один из клиентов пришёл с MVP на Express: при нагрузке 200 RPS GraphQL-запрос падает с 501. Таблицы не индексированы, N+1 запросы по каскаду. Нужен production-букварь: правильная установка Vendure с нуля, который выдержит 10 000 заказов в день без тормозов. Наш подход гарантирует стабильность и нулевой downtime при деплое. Заказав у нас установку, вы получаете магазин на NestJS, готовый к высоким нагрузкам.

Ключевые проблемы, которые мы решаем

Первая типичная проблема — hydration mismatch при SSR магазина на Next.js из-за неправильного кэширования. Vendure использует Apollo Client, но без Redis кэш слетает при первом рендере. Вторая — N+1 запросы в GraphQL: если не настроить DataLoader и индексы в TypeORM, каждая выборка коллекции товаров порождает 50+ запросов к БД. Третья — миграции вручную: при отсутствии TypeORM CLI и CI/CD команды забывают накатить миграции, и продакшен падает после деплоя. Мы решаем эти проблемы на этапе проектирования.

Как мы настраиваем Vendure под ключ?

Развёрнутый кейс: интернет-магазин косметики (20 000 SKU). Требовалось: интеграция с четырьмя платёжными шлюзами, доставка через Boxberry и собственная корзина с кастомными полями. Выбрали ручную установку в монорепозиторий. Стек: Node.js 20 LTS, PostgreSQL 14, Redis 7, Docker Compose + Nginx.

Конфигурация TypeORM:

// src/vendure-config.ts export const config: VendureConfig = { apiConfig: { hostname: '0.0.0.0', port: 3000, adminApiPath: 'admin-api', shopApiPath: 'shop-api', }, dbConnectionOptions: { type: 'postgres', synchronize: false, logging: process.env.APP_ENV === 'development', entities: [ Customer, Order, Product, ProductVariant, // ... custom entities ], }, paymentOptions: { paymentMethods: [ StripePaymentMethod.init(), MolliePaymentMethod.init(), ], }, }; 

Вместо стандартного CLI-генератора пришлось создать свой плагин для синхронизации товаров из 1С по CommerceML. Результат — скорость загрузки каталога выросла на 60% по сравнению с прежним решением на WooCommerce. За счёт такой кастомизации вы экономите на инфраструктуре и получаете магазин на NestJS, полностью под ваши задачи. Закажите подобное решение для вашего бизнеса.

Процесс работы

  1. Аналитика — аудит текущего API и БД, выявление узких мест (N+1, отсутствие индексов).
  2. Проектирование — схема GraphQL, плагины для платёжек и доставки, architecture decision record.
  3. Реализация — написание конфигов и кастомных модулей (NestJS + TypeORM).
  4. Тестирование — нагрузочное тестирование с k6 до 5000 RPS, проверка Core Web Vitals (LCP < 2.5 с).
  5. Деплой — CI/CD через Docker Compose, бекапы, мониторинг.
Этап Длительность Что входит
Аналитика 1–2 дня Аудит кода, профилирование, нагрузочные тесты
Проектирование 1–2 дня Выбор плагинов, схема данных, ADR
Разработка 3–5 дней Конфиги, миграции, custom resolver, плагины
Тестирование 1–2 дня E2E на Cypress, unit-тесты, интеграционное тестирование
Деплой 1 день Docker + CI/CD (GitHub Actions), мониторинг

Что входит в работу?

  • Настройка Vendure с нуля или миграция с другого e-commerce.
  • Полная документация по архитектуре и эндпоинтам.
  • Доступы к admin UI и логам.
  • Обучение команды (2 сессии по 2 часа).
  • Гарантия стабильной работы и поддержка 2 недели после деплоя.

Почему установка руками лучше CLI?

CLI-генератор @vendure/create подходит для прототипов, но для продакшена он навязывает лишние плагины и структуру. Ручная установка даёт полный контроль над версиями и конфигурацией. Наши клиенты экономят до 15% затрат на инфраструктуре за счёт кастомизации. Получите консультацию по вашему проекту.

Как гарантируется стабильность после деплоя?

Мы настраиваем мониторинг (Prometheus + Grafana), регулярные бекапы и health checks. В случае сбоя — автоматический перезапуск через Docker Compose. Все изменения проходят CI/CD с тестами и ручным код-ревью. Гарантия распространяется на 2 недели после деплоя.

Чек-лист после установки (проверяем каждый пункт)

Критерий Описание
БД и миграции Создана БД, накачены миграции, synchronize = false
Admin UI Доступен по /admin, работает CRUD для товаров
Shop API Ответ на /shop-api существует в виде GraphQL схемы
Assets Директория существует и доступна для записи
SMTP Проверена отправка письма при создании заказа
Worker Job queue работает, Redis подключён
SSL Nginx настроен на HTTPS, HSTS включён

Установка занимает от 1 до 3 дней в зависимости от сложности интеграций. Стоимость рассчитывается индивидуально — свяжитесь с нами, и мы оценим ваш проект за 24 часа.