Платформа для интернет-магазина на своём сервере
Платформа для интернет-магазина на своём сервере
Если вы уже решили, что магазин будет стоять на своём сервере, а не арендован у SaaS-площадки, вопрос смещается с «какой движок лучше» на «как это физически развернётся»: какой нужен VPS, кто выпустит SSL на домен, сколько займёт установка и что будет с обновлениями через полгода. NitroCart — платформа именно под такой сценарий: один Django-образ, свой сервер, свой IP, деплой из Telegram Mini App за 15–30 минут. Ниже — техническая сторона вопроса, без повторения общих рассуждений «что такое движок».
Общий обзор платформы — на главной странице NitroCart.
Что это и кому нужно
«Платформа на своём сервере» — это не про функциональность каталога (она примерно сопоставима у самостоятельного движка и SaaS), а про то, где физически лежат файлы, база данных и IP-адрес, с которого отдаётся сайт. Self-hosted-вариант означает: вы арендуете VPS у любого хостера, ставите на него образ платформы, и с этого момента сервер, домен, резервные копии и логи — целиком в вашем распоряжении, без посредника, который может ограничить доступ или закрыть аккаунт.
Такой формат нужен тем, кто уже сравнил варианты и упёрся в конкретные инфраструктурные требования: нужен полный root-доступ к серверу для собственных скриптов и интеграций, нужно держать данные покупателей физически в определённой юрисдикции, нужна возможность быстро сменить IP или домен без миграции между площадками, или просто нет доверия к тому, что аккаунт SaaS-конструктора не заблокируют посреди рекламной кампании.
Критерии выбора платформы для развёртывания на своём сервере
- Требования к VPS. Сколько RAM, ядер CPU и места на диске нужно для стабильной работы под нагрузкой, и есть ли запас для роста трафика.
- Домен и SSL. Автоматический выпуск сертификата на собственный домен или ручная возня с certbot и настройкой веб-сервера.
- Процесс деплоя. Разворачивается ли платформа скриптом/приложением, или ставить стек (веб-сервер, БД, зависимости) нужно вручную по документации.
- Модель лицензирования по IP. Лицензия привязана к конкретному серверу навсегда, или можно перенести её на новый IP при смене хостера.
- Обновления движка. Патчи приходят удалённо и подписаны, или обновление означает ручной SSH и риск сломать рабочую копию.
- Бэкапы. Кто отвечает за резервное копирование — сама платформа, хостер или полностью вы своими скриптами.
- Поддержка при проблемах с сервером. Есть ли у вендора движка канал поддержки по вопросам установки, или вся ответственность за инфраструктуру на вас с первого дня.
Таблица сравнения способов разместить магазин
| Вариант | Контроль над сервером | Домен и SSL | Порог входа |
|---|---|---|---|
| Self-hosted VPS (NitroCart) | Полный root-доступ, свой IP | Свой домен, автоматический Let's Encrypt | Telegram Mini App, 15–30 минут |
| SaaS-облако (аренда витрины) | Нет, инфраструктура площадки | Поддомен площадки или подключаемый домен с ограничениями | Минуты, но без доступа к серверу |
| Shared-хостинг + CMS (WordPress/WooCommerce) | Частичный, зависит от тарифа хостинга | Обычно свой домен, SSL часто платный или через хостера | Часы-дни на настройку стека и плагинов |
| No-code конструктор сайта | Нет, закрытая платформа | Часто только поддомен на бесплатном тарифе | Минуты, но без экспорта в свою инфраструктуру |
Как это устроено в NitroCart
Установка идёт через Telegram Mini App: вы указываете IP свежего VPS и данные для подключения по SSH, приложение разворачивает Docker-образ NitroCart, настраивает веб-сервер и подключает домен — процесс занимает 15–30 минут без ручной сборки стека. SSL-сертификат на домен выпускается бесплатно через Let's Encrypt в рамках того же процесса, продление сертификата не требует ручных действий.
Лицензия привязана не к домену, а к IP-адресам сервера: тариф Start покрывает 1 IP, Pro — до 5, Enterprise — до 15. Это значит, что на одной лицензии можно держать несколько независимых установок движка на разных серверах — каждая со своим доменом, своей базой заказов и своим IP, в рамках лимита тарифа. Обновления движка — подписанные патчи (проверка подписи Ed25519), которые вы устанавливаете на каждый сервер: без пересборки образа и без ручной правки файлов, но и без автоматической рассылки на весь парк серверов сразу — при нескольких установках патч нужно применить на каждую отдельно. Все данные — заказы, покупатели, каталог, загруженные файлы — физически хранятся в базе данных и на диске вашего VPS, а не в инфраструктуре вендора платформы.
Пошагово: что происходит от открытия Mini App до рабочего домена
- 0–2 минуты. Открытие Telegram Mini App, ввод IP нового VPS и SSH-данных, выбор лицензионного ключа.
- 2–8 минут. Приложение подключается по SSH, ставит Docker и зависимости на чистый сервер (если их ещё нет), забирает образ NitroCart.
- 8–15 минут. Разворачивается контейнер, применяются миграции базы данных, поднимается веб-сервер.
- 15–20 минут. Привязка домена: DNS-запись A должна уже указывать на IP сервера к этому шагу, иначе выпуск SSL встанет в ожидание, пока запись не распространится.
- 20–30 минут. Выпуск и установка сертификата Let's Encrypt, финальная проверка, магазин отвечает по HTTPS на указанном домене.
Ориентир по серверу для стабильной работы одной установки под умеренную нагрузку: от 2 ГБ RAM, 1–2 ядра CPU, от 20 ГБ диска SSD — это покрывает типичный VPS начального уровня у большинства хостеров ($5–20 в месяц). Под несколько установок на одном сервере (в рамках лимита IP тарифа, если сервер держит несколько виртуальных интерфейсов) запас по RAM и диску стоит закладывать кратно числу копий.
Когда NitroCart не подходит
Если у вас нет ни своего VPS, ни желания его администрировать, и вы ищете решение, где вообще не нужно думать о сервере, домене или SSL, — self-hosted-платформа добавляет шаг, которого нет в готовой SaaS-витрине. Также NitroCart не подойдёт, если нужен маркетплейс с независимыми продавцами внутри одной установки или встроенная автоматизация импорта товаров от поставщиков. Честный разбор ограничений — в статье когда NitroCart не подходит.
FAQ
Нужен ли отдельный VPS для каждой установки? Нет технического требования держать их на разных серверах, но лицензия считает именно IP-адреса, поэтому проще всего — один VPS с одним публичным IP на установку в рамках лимита тарифа.
Кто выпускает SSL-сертификат? Let's Encrypt, автоматически в рамках процесса деплоя, без отдельной оплаты и без ручной настройки certbot.
Что если сменить хостера или IP сервера? Лицензия привязана к IP, поэтому при смене сервера нужно заново активировать лицензию на новый IP — это не привязка навечно к одному хостеру.
Нужен ли root-доступ к серверу? Да, установщик работает через SSH и разворачивает Docker-образ на сервере, доступ к которому есть только у вас.
Как устроены обновления, не сломают ли они рабочий магазин? Обновления — удалённые подписанные патчи, применяются без пересборки образа; перед выкатом на бой стоит иметь свежий бэкап базы данных, как для любого продакшен-сервера.
Сколько реально занимает установка, если DNS ещё не настроен заранее? Сама установка платформы — 15–30 минут, но если A-запись домена ещё не создана или не распространилась, шаг выпуска SSL будет ждать её — стоит указать домен на IP сервера заранее.
Тарифы и точные лимиты по IP — на странице цен NitroCart.
Сколько это стоит
NitroCart — лицензия, а не подписка с процентом с продаж. Три тарифа, оплата за месяц, квартал (до −10%) или год (−25%):
- Start — от $99/мес ($890/год, ≈$74/мес), 1 магазин.
- Pro — от $199/мес ($1 790/год, ≈$149/мес), до 5 магазинов одновременно.
- Enterprise — от $399/мес ($3 590/год, ≈$299/мес), до 15 магазинов одновременно.