Coolify и Claude Code: публикация Next.js на VPS за 6 шагов
MarkdownПошагово разверните Coolify на VPS и опубликуйте Next.js-проект из Claude Code: настройка GitHub, домена, HTTPS и MCP, требования к серверу и расходы.
Читать статью полностью
Документация Ailoot — справочные материалы по работе с сервисом.
Ограничения платформ и оплата в 2026 году
Бесплатные тарифы помогают, пока вы не превысили лимиты; после этого может потребоваться международная карта. Heroku закрыл бесплатный тариф для всех в 2022 году и в феврале 2026 года перешёл в режим поддержки существующего продукта. При самостоятельном размещении Coolify вы контролируете сервер, обходитесь без оплаты за каждого пользователя и зависимости от одного поставщика.
Типичная ситуация для разработчика, работающего с ИИ в 2026 году: вечером создаёте MVP в Cursor или Claude Code, отправляете его в репозиторий GitHub, открываете vercel.com и подключаете репозиторий. На экране оформления подписки вводите карту и получаете сообщение Transaction declined.
Это не обязательно ошибка сервиса или временный сбой.
С Railway, Render и Heroku могут возникать похожие сложности. Heroku прекратил предоставлять бесплатный тариф всем пользователям в 2022 году, а в феврале 2026 года перешёл в режим поддержки: новые возможности и контракты Enterprise больше не появляются. Если ваша карта не принимается, придётся искать другой доступный способ оплаты.
Оплатить сервис можно виртуальной картой Visa в Казахстане или через корпоративный платёжный сервис. Это может увеличить стоимость, добавить время на каждую транзакцию и создать риск блокировки аккаунта, если платёжный процессор обнаружит несовпадение страны.
В исходном примере проверялись три варианта: Vercel Pro, Railway и Render.
Что такое Coolify и как работает платформа для самостоятельного размещения?
Coolify — платформа PaaS с открытым исходным кодом, которую можно развернуть на собственном сервере. Она служит альтернативой Heroku, Vercel и Netlify. Установка на VPS с Ubuntu выполняется одной командой curl. В основе — Docker, Traefik для обратного прокси и Let's Encrypt для HTTPS. Доступны интеграция с GitHub, webhooks для автоматических публикаций и резервное копирование в S3. Проект заявляет поддержку более 280 сервисов с установкой в один клик, включая PostgreSQL, Redis и MinIO. Самостоятельно размещаемая версия бесплатна без ограничений. Репозиторий на GitHub использует лицензию Apache-2.0 и имеет 55 800 звёзд.
Coolify — проект с открытым исходным кодом, созданный на Laravel и Docker. Он превращает чистый VPS в платформу для размещения приложений. После первоначальной установки остальные действия выполняются через веб-интерфейс: подключите GitHub, выберите репозиторий и нажмите Deploy.
В README проекта на GitHub Coolify описан как открытая платформа, которую пользователь может размещать самостоятельно, и альтернатива Heroku, Netlify и Vercel.
Под капотом Coolify состоит из четырёх частей:
- Веб-интерфейс на Laravel 12, Livewire 3 и Tailwind v4 — панель управления приложениями.
- Docker и Docker Compose — приложения работают в контейнерах, изолированных друг от друга.
- Обратный прокси Traefik или Caddy — принимает входящий HTTP/HTTPS-трафик и направляет его к контейнерам.
- Интеграция с Let's Encrypt — автоматически выпускает и обновляет SSL-сертификаты для доменов.
Сравнение основных возможностей Coolify и Vercel:
| Возможность | Vercel | Coolify |
|---|---|---|
| Автоматическая публикация после git push | ✅ | ✅ (через GitHub webhook) |
| Бесплатный HTTPS | ✅ | ✅ (Let's Encrypt) |
| Предварительные публикации для PR | ✅ | ✅ (через GitHub App) |
| Интерфейс для переменных окружения | ✅ | ✅ |
| Резервные копии базы данных | ❌ (собственных БД нет) | ✅ (в совместимое с S3 хранилище) |
| PostgreSQL / Redis / MongoDB | $20+/мес каждая | ✅ установка в один клик, бесплатно |
| Запланированные задачи (cron) | ❌ | ✅ (синтаксис cron) |
| Оплата за пользователя | $20/пользователь/мес | Нет |
| Зависимость от поставщика | Высокая (Edge Functions, ISR) | Отсутствует (ваш Docker) |
| Глобальный CDN | ✅ | ❌ (только ваш VPS) |
Встроенного глобального CDN у Coolify нет. Если проект рассчитан на пользователей по всему миру и важно уменьшить задержку для аудитории из США и Европы, можно подключить Cloudflare; для статических файлов доступен бесплатный тариф.
Самостоятельно размещаемая версия Coolify бесплатна без ограничений по числу приложений, серверов и публикаций. Также предлагается платный Coolify Cloud: $5/мес за 2 сервера и $3 за каждый дополнительный. Сами серверы при этом остаются вашими — Coolify Cloud размещает панель управления.
Последний релиз — v4.1.0 от 18 мая 2026 года. Среди нововведений: beta-версия build pack Railpack, аудит действий, сравнение конфигураций между публикациями и нативная точка MCP с доступом только для чтения. Сведения доступны в релизах на GitHub.
Какой VPS выбрать для Coolify в 2026 году?
Минимальная конфигурация для Coolify — 2 vCPU, 2 GB RAM, 30 GB SSD и Ubuntu LTS (20.04, 22.04 или 24.04). На таком VPS можно одновременно разместить 3–5 небольших проектов.
Минимальные системные требования приведены в официальной документации Coolify:
| Параметр | Минимум | Рекомендуемая конфигурация |
|---|---|---|
| CPU | 2 ядра | 2–4 ядра |
| RAM | 2 GB | 4 GB (запас для сборки) |
| Хранилище | 30 GB | 50–80 GB (образы и БД) |
| Архитектура | AMD64 или ARM64 (64-bit) | AMD64 |
| ОС | Ubuntu LTS 20.04 / 22.04 / 24.04 | 22.04 LTS |
| Root | Обязателен | Через SSH-ключ, не пароль |
2 GB RAM — строгий нижний предел. На сервере с 1 GB установщик может дойти до установки Docker, после чего процесс зависнет или завершится из-за нехватки памяти (OOM, out of memory). Не стоит экономить на оперативной памяти.
Цены и доступность VPS можно проверить у Timeweb Cloud, FirstVDS и Selectel.
Для более ресурсоёмкой конфигурации — например, базы объёмом 100 ГБ и нескольких экземпляров Postgres — рассмотрите выделенный сервер Aeza.
Не выбирайте:
- Общий VPS с 512 МБ–1 ГБ RAM — ресурсов может не хватить даже для запуска Coolify. Такая конфигурация подходит скорее для статического сайта на nginx, но не для PaaS.
Как установить Coolify за 5 минут?
Для установки выполните одну команду из документации. После запуска веб-интерфейс станет доступен на порту 8000; создайте первого администратора и откройте пустую панель. В примере установка на чистой Ubuntu занимает 5–7 минут, из которых 3–4 минуты уходят на apt-get install docker. Скрипт загружает необходимые зависимости и настраивает Docker автоматически.
Шаг 1. Подключитесь к VPS по SSH.
После создания VPS провайдер покажет IP-адрес сервера и пароль root в панели или пришлёт их по электронной почте. Подключитесь с локального компьютера:
ssh root@1.2.3.4
Если вместо пароля провайдер выдал SSH-ключ, укажите его через -i path/to/key. Далее предполагается, что на сервере установлена чистая Ubuntu 22.04 или 24.04 LTS.
Шаг 2. Запустите установщик Coolify.
Выполните команду из официальной инструкции по установке:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash
Скрипт выполняет три действия:
- Проверяет систему: версию Ubuntu LTS, наличие root и архитектуру AMD64.
- Устанавливает Docker и Docker Compose, если они отсутствуют.
- Загружает образы Coolify (
coolify/coolify,coolify/realtime,traefik) и запускает их в фоне с помощью docker-compose.
Установка занимает примерно 3–5 минут. В терминале появятся журналы apt-get, затем начнётся docker pull. После сообщения Coolify v4.1.0 is now running переходите к следующему шагу.
Шаг 3. Откройте веб-интерфейс.
Перейдите в браузере по адресу:
http://1.2.3.4:8000
Откроется мастер первоначальной настройки с формой для создания пользователя. Укажите электронную почту и пароль и сохраните данные. Первый пользователь автоматически получит права администратора.
После сохранения появится пустая панель: слева меню Resources / Projects / Servers / Sources / Notifications / Settings, в центре — предложение «Add your first resource».
Шаг 4. Настройте firewall у провайдера, а не только UFW.
После установки снаружи доступна панель на порту 8000. Чтобы пользователи могли обращаться к приложениям, откройте порты 80 (HTTP) и 443 (HTTPS):
| Порт | Назначение |
|---|---|
| 22 | SSH-доступ к серверу |
| 80 | HTTP-трафик и проверка Let's Encrypt |
| 443 | HTTPS-трафик пользователей |
| 8000 | Панель Coolify; после настройки домена для панели порт можно закрыть |
В официальной документации Coolify по firewall поясняется, что Docker применяет правила iptables на основе NAT, которые могут обходить традиционные Linux-firewall, например UFW.
Поэтому одного UFW может быть недостаточно: Docker способен перенаправлять порты контейнеров наружу через iptables. Управляйте доступом через firewall в панели провайдера. У Timeweb, Selectel и Aeza соответствующие настройки находятся в разделе «Сеть → Firewall» или похожем.
Шаг 5 (необязательный). Подключите домен к панели.
Чтобы открывать Coolify по адресу https://coolify.example.com, создайте DNS A-record coolify.example.com → 1.2.3.4. В панели Coolify перейдите в Settings → Instance Settings → Instance Domain, укажите поддомен и сохраните изменения. Coolify запросит сертификат Let's Encrypt; после его получения панель будет доступна по HTTPS.
Когда домен заработает, порт 8000 можно закрыть в firewall: панель будет открываться по HTTPS на стандартном порту 443.
Как подключить GitHub: App или PAT?
Coolify позволяет подключить GitHub через GitHub App или Personal Access Token (PAT). GitHub App поддерживает предварительные публикации для PR и точечные разрешения на уровне репозиториев. PAT может подойти для старых сценариев, но не предоставляет такие предварительные публикации и при широких правах может открывать доступ ко многим репозиториям.
В Coolify откройте Sources → + Add → GitHub App. Мастер состоит из трёх экранов:
- Name & description — задайте источнику имя, например
github-main, и при необходимости добавьте описание. - Configure on GitHub — кнопка перенаправит на GitHub.com и откроет форму создания GitHub App с запрашиваемыми разрешениями.
- Confirm — вернувшись из GitHub, нажмите «Save».
На следующем этапе GitHub покажет запрошенные Coolify разрешения:
| Разрешение | Уровень доступа | Назначение |
|---|---|---|
| Contents | Только чтение | Клонирование репозитория |
| Pull Requests | Чтение и запись | Создание preview-деплоев и комментариев к PR |
| Email addresses | Только чтение | Идентификация коммитов |
| Metadata | Только чтение | Список репозиториев |
Проверьте разрешения перед подтверждением. GitHub App может работать только с подключёнными репозиториями; не предоставляйте ей более широкий доступ, чем необходимо.
Если политика безопасности организации запрещает GitHub Apps, рассмотрите PAT, предварительно проверив его область доступа и срок действия.
После сохранения Coolify покажет GitHub App и список подключённых репозиториев. При создании приложения можно будет выбрать нужный репозиторий из списка.
Как опубликовать проект Next.js из Claude Code за 6 шагов?
Рабочий процесс состоит из шести этапов: создайте проект в Claude Code, инициализируйте Git-репозиторий, отправьте его на GitHub, добавьте приложение в Coolify, укажите переменные окружения и запустите Deploy. Coolify может определить Next.js, использовать Nixpacks для сборки и выдать временный домен вида <YOUR_TEMPORARY_DOMAIN> с HTTPS.
Шаг 1. Опишите проект в Claude Code.
mkdir my-vibe-app
cd my-vibe-app
git init
claude
В сессии укажите задачу:
Создай проект Next.js 14 с App Router:
- главная страница со списком пользователей
- эндпоинт /api/users, который возвращает массив данных из БД
- PostgreSQL через Prisma
- Tailwind для стилей
- файл .env.example с DATABASE_URL
- README.md с инструкцией по запуску
Claude Code создаст структуру проекта, package.json, prisma/schema.prisma и .env.example. Отдельно попросите добавить Dockerfile и .dockerignore:
Подготовь Dockerfile для production-сборки и файл .dockerignore.
Dockerfile необязателен: Coolify может собрать приложение через Nixpacks и без него. Собственный Dockerfile даёт больше контроля над сборкой и может быть удобен для крупных проектов.
Шаг 2. Создайте репозиторий GitHub и отправьте туда код.
Репозиторий можно создать в интерфейсе GitHub, затем настроить git remote add origin .... Claude Code также может выполнить публикацию через команду:
/commit-push-pr Initial Next.js app generated with Claude Code
Или попросите словами: «Закоммить все файлы и отправь их в новый репозиторий my-vibe-app в моём аккаунте». Для этого Claude Code использует установленный gh CLI. Перед отправкой проверьте, какие файлы попадут в репозиторий, и выберите приватный или публичный доступ.
Шаг 3. Создайте Application в Coolify.
В панели Coolify нажмите + New → Application и заполните форму:
- Source — выберите
github-main, созданный ранее источник GitHub App. - Repository — выберите
my-vibe-app. - Branch — укажите
main. - Build Pack — Coolify определит его автоматически: при наличии Dockerfile выберет
dockerfile, иначе —nixpacks. При необходимости значение можно изменить вручную. - Domain — оставьте предложенный временный домен, например
<YOUR_TEMPORARY_DOMAIN>; позднее его можно заменить. - Port — для Next.js обычно используется
3000.
Сохраните настройки.
Шаг 4. Укажите переменные окружения.
В созданном приложении откройте вкладку Environment Variables и добавьте необходимые значения, например:
DATABASE_URL=postgresql://user:pass@db-host:5432/mydb
NODE_ENV=production
ANTHROPIC_API_KEY=sk-ant-...
Если базы данных ещё нет, создайте её в Coolify через + New → Database → PostgreSQL. Coolify запустит контейнер PostgreSQL и покажет внутренний адрес DATABASE_URL, например postgresql://postgres:pass@postgres-xyz:5432/postgres. Укажите его в переменных приложения.
Проверьте настройки хранения секретов и журналирования в своей инсталляции, прежде чем добавлять чувствительные значения.
Шаг 5. Нажмите Deploy.
Нажмите синюю кнопку Deploy в правом верхнем углу. Ход сборки будет отображаться во вкладке Logs:
[stage: clone] Cloning '<repository-url-from-github>'
[stage: build] Detected Next.js, using Nixpacks
[stage: build] Installing Node 20, npm 10
[stage: build] npm install (245s)
[stage: build] npm run build (87s)
[stage: deploy] Creating container my-vibe-app-xyz
[stage: deploy] Container started, health check passed
[stage: proxy] Traefik routing configured for <YOUR_TEMPORARY_DOMAIN>
[stage: ssl] Let's Encrypt cert issued for <YOUR_TEMPORARY_DOMAIN>
В примере первая сборка занимает 3–5 минут, поскольку требуется загрузить базовый образ Node и установить зависимости. Последующие сборки могут проходить быстрее благодаря Docker layer cache.
Когда статус станет Running, скопируйте URL приложения из поля Domains Coolify и откройте именно его. Далее <app-url-from-coolify> обозначает это значение, а не настоящий адрес-заглушку. <YOUR_TEMPORARY_DOMAIN> используется как временный wildcard-DNS: поддомен в имени указывает на IP-адрес, например 1-2-3-4.<YOUR_TEMPORARY_DOMAIN> на 1.2.3.4. Такой адрес помогает проверить публикацию до настройки собственного DNS.
Шаг 6. Убедитесь, что приложение работает.
Добавьте /api/users к скопированному URL без двойной косой черты: <app-url-from-coolify>/api/users. Это JSON-эндпоинт шага 1; корень приложения — главная страница. Если запрос завершился ошибкой 500, проверьте stack trace во вкладке Logs. Одна из возможных причин — DATABASE_URL указывает на недоступную или несуществующую базу. Создайте PostgreSQL в Coolify и обновите переменную, если именно в этом причина.
Заголовок обещает публикацию за 15 минут от момента заказа VPS. В приведённом примере на чистом сервере путь занимал 12–18 минут, поэтому фактическое время зависит от сборки, сервера и DNS.
Как настроить собственный домен и HTTPS?
Для подключения домена создайте DNS A-record с IP-адресом сервера, укажите домен в настройках приложения Coolify, включите Automatic HTTPS и запустите повторную публикацию. Let's Encrypt выпускает сертификат после проверки домена; распространение DNS-записи обычно занимает 5–30 минут. К моменту повторной публикации домен уже должен разрешаться в IP сервера, иначе проверка не пройдёт. В исходной инструкции указан интервал 12 минут до следующей попытки после неудачной проверки.
Шаг 1. Создайте DNS A-record в панели регистратора.
В примерах домены зарегистрированы у Reg.ru, Beget или Timeweb. Принцип настройки одинаков:
| Тип записи | Имя | Значение |
|---|---|---|
| A | app (или @ для корня) | 1.2.3.4 (IP сервера) |
Сохраните запись и проверьте её из консоли:
dig app.example.com +short
# Должен вернуть 1.2.3.4
Если команда ничего не вернула или показала другой IP, DNS-запись ещё не распространилась. Подождите 5–30 минут.
Шаг 2. Укажите домен в Coolify.
В приложении откройте вкладку Configuration → General. В Domains замените скопированный временный URL приложения на https://app.example.com, используя собственный настроенный домен. Проверьте, что включён переключатель Automatic HTTPS; обычно он активен по умолчанию.
Сохраните настройки и нажмите Redeploy.
Шаг 3. Дождитесь сертификата Let's Encrypt.
В журнале могут появиться такие сообщения:
[stage: ssl] Requesting Let's Encrypt cert for app.example.com
[stage: ssl] HTTP challenge sent to /.well-known/acme-challenge/xxx
[stage: ssl] Validation passed, cert issued
[stage: ssl] Cert installed, HTTPS enabled
После успешной проверки сайт будет доступен по https://app.example.com с HTTPS.
Согласно официальной инструкции Coolify по устранению неполадок Let's Encrypt, проверьте следующие распространённые причины:
- Порт 80 закрыт в firewall. Let's Encrypt использует HTTP challenge по адресу
http://app.example.com/.well-known/acme-challenge/xxx. Откройте порт 80 в firewall провайдера. - Включён прокси Cloudflare (оранжевое облако). Прокси может изменить ответ на запрос проверки. Попробуйте режим «DNS only» (серое облако) либо настройте проверку DNS-01 через Cloudflare API.
- DNS-запись ещё не распространилась. Если вы создали A-record недавно, подождите 5–30 минут и проверьте, что домен указывает на нужный сервер.
В исходной инструкции приведён лимит Let's Encrypt: 5 неудачных попыток в час для одного домена, а интервал восстановления указан как одна попытка в 12 минут. При достижении лимита изучите журнал, устраните причину ошибки и дождитесь следующего допустимого запроса.
Как Claude Code может управлять Coolify через MCP?
Model Context Protocol позволяет связать Claude Code с API Coolify. С его помощью можно запускать публикацию, проверять состояние и читать журналы — если выбранный сервер MCP предоставляет такие операции. В Coolify v4.1.0, выпущенной 18 мая 2026 года, появилась нативная поддержка MCP с инструментами только для чтения.
Model Context Protocol (MCP) — стандарт Anthropic для взаимодействия Claude Code с внешними системами. Подключённый сервер MCP предоставляет модели инструменты, которые она может вызывать. Coolify v4.1.0 включает собственную поддержку MCP.
Нативный MCP в Coolify v4.1.0 (новинка мая 2026 года).
В changelog v4.1.0 от 18 мая 2026 года указана поддержка MCP на уровне экземпляра и инструментов для чтения ресурсов, API и интерфейса Coolify.
Нативная точка MCP позволяет подключить Claude Code без отдельного сервера-посредника. В этой версии доступ только для чтения: можно просматривать приложения, их статусы и конфигурации, но нельзя менять настройки. Такой доступ подходит для запросов о состоянии инфраструктуры.
Подключение настраивается через .mcp.json:
{
"mcpServers": {
"coolify-native": {
"url": "https://coolify.example.com/api/v1/mcp",
"headers": {
"Authorization": "Bearer <your-api-token>"
}
}
}
}
Сведения о сроках появления полноценного доступа на запись в нативном MCP здесь не приводятся: планируемые версии и сроки необходимо сверять с актуальными релизами Coolify.
Пять проблем при первой публикации и способы их устранить
При первой публикации проверьте объём RAM, доступность порта 80, влияние прокси Cloudflare на проверку Let's Encrypt, правила firewall для Docker и способ подключения GitHub. Эти пункты помогают найти типичные причины сбоев при установке и публикации.
Проблема 1: меньше 2 GB RAM — установщик завершается из-за OOM.
Возможный симптом: команда curl install.sh доходит до docker pull coolify/coolify, останавливается примерно на 70%, а затем процесс завершается с Killed (signal 9). В dmesg | tail может появиться запись Out of memory: Killed process.
Один из временных способов — создать файл подкачки размером 4 GB:
# Create a 4 GB swap file as a temporary workaround
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Для долгосрочной эксплуатации рассмотрите VPS с 4 GB RAM. Swap может помочь запустить Coolify, но сборка крупных проектов Next.js всё ещё может завершаться с ошибкой.
Проблема 2: Docker публикует порты, несмотря на включённый UFW.
Возможный симптом: UFW разрешает только порт 22, однако приложение доступно из интернета через другой порт, например 3000.
В документации Coolify по firewall указано, что Docker использует правила iptables на основе NAT, которые могут обходить традиционный UFW.
Настройте firewall в панели провайдера, где правила применяются на уровне виртуальной сети. У Timeweb, Selectel и Aeza найдите раздел «Firewall» или «Сеть → Firewall».
Проблема 3: прокси Cloudflare мешает проверке Let's Encrypt.
В журнале после Redeploy может появиться Let's Encrypt validation failed - challenge returned 403.
Одна из возможных причин — Cloudflare проксирует HTTP-запрос проверки и отдаёт собственную страницу вместо файла challenge.
Попробуйте один из двух способов:
- Переключите запись на «DNS only» (серое облако Cloudflare). При этом для этой записи перестанут работать прокси и связанные с ним функции.
- Настройте проверку DNS-01 через Cloudflare API. В Coolify откройте Settings → SSL Configuration, выберите Cloudflare provider и укажите API-токен с разрешениями Zone:Read и DNS:Edit. Проверка Let's Encrypt будет выполняться через TXT-record вместо HTTP.
Второй способ требует дополнительных настроек и позволяет оставить прокси Cloudflare включённым.
Проблема 4: при подключении через PAT не появляются preview-деплои PR.
Признак: GitHub подключён через Personal Access Token, обычные публикации работают, но открытие PR не создаёт предварительную публикацию в Coolify.
Проверьте, поддерживает ли используемый способ подключения нужные webhook-события. Если для сценария требуется GitHub App, подключите его через Sources → Add → GitHub App и настройте доступ к нужному репозиторию. Старый источник PAT удаляйте только после проверки, что он больше не нужен.
Проблема 5: Coolify не полностью повторяет возможности Vercel.
У Coolify нет следующих функций из коробки:
| Возможность Vercel | Coolify | Что можно сделать |
|---|---|---|
| Глобальный CDN | Нет | Подключить Cloudflare для статических файлов |
| Incremental Static Regeneration | Нет | revalidatePath выполняется только на вашем сервере |
| Оптимизация изображений | Нет | Использовать next/image с локальным loader или Cloudflare Images |
| Автоматическое масштабирование при пиках | Нет | Масштабировать сервер вручную или увеличить VPS |
| Edge Functions | Нет | Использовать обычные API routes |
Если проект — SaaS с высокой нагрузкой, глобальной аудиторией и требованием задержки < 100 ms по всему миру, оцените ограничения самостоятельного размещения и требования проекта. Для MVP и тестирования на аудитории 100–1000 пользователей в день Coolify может покрыть базовые потребности, но реальные результаты зависят от конфигурации и нагрузки.
15 минут в заголовке — ориентир для публикации одного проекта по краткому сценарию. Полная настройка инфраструктуры, включая мониторинг, резервные копии и оповещения, потребует дополнительного времени.
Сколько можно сэкономить за год по сравнению с Vercel?
Расходы на Vercel и Coolify зависят от трафика, конфигурации серверов, команды и набора функций. Для расчёта сравните тарифы обеих платформ и добавьте стоимость VPS, резервных копий и времени на обслуживание. Самостоятельное размещение требует первоначальной настройки и регулярной поддержки.
Цифры Vercel ниже — сценарные оценки мая 2026 года, а не текущие предложения. Самостоятельный Coolify не требует лицензии, но VPS, копии, диски, трафик и обслуживание стоят денег. Получите предложение по требованиям выше: численной цены VPS в исходных сценариях нет, поэтому фиксированная экономия не установлена.
Обозначим C полный месячный счёт VPS, резервного хранилища, дополнительного трафика, мониторинга и платной панели, если она нужна. Каждую позицию считайте один раз. r — час работы по обслуживанию в той же валюте. Оценка статьи: 5–10 часов первоначально и 1–2 в месяц, то есть 17–34 часа в первый год и 12–24 в последующие.
| Сценарий | Оценка Vercel/мес | Vercel/год | Coolify инфраструктура/мес | Coolify первый год с трудом | Экономия первого года |
|---|---|---|---|---|---|
| Прототип,100 000 посещений/мес | $20 + ~$5 = $25 | $300 | C | 12C + (17–34)r | $300 − 12C − (17–34)r |
| Пять проектов на VPS | $20 + $30 трафик/функции = $50 | $600 | C | 12C + (17–34)r | $600 − 12C − (17–34)r |
| Три разработчика,пять проектов | $60 места + $30 трафик = $90 | $1080 | C | 12C + (17–34)r | $1080 − 12C − (17–34)r |
Для разного размера серверов используйте отдельное C каждого сценария. Месячный эквивалент первого года — C + (17–34)r/12, последующих лет — 12C + (12–24)r в год. На стороне Vercel тоже учтите сопоставимое обслуживание. Отрицательная экономия означает, что самостоятельный вариант дороже. Не прибавляйте снова полную зарплату того же инженера, если она уже включена в r.
До перехода заполните C настоящим предложением и планом копий, выберите r и сравните месяц фактической нагрузки. Без этих значений статья даёт модель затрат, а не денежную экономию.
При переходе на Coolify вы самостоятельно управляете инфраструктурой и отвечаете за её обслуживание. Это даёт контроль над размещением, но требует времени и технической поддержки.
Самостоятельное размещение — отдельная модель эксплуатации: пользователь владеет инфраструктурой и сам принимает решения о её настройке, стоимости и обслуживании.
Источники
- Coolify: введение в официальной документации
- Coolify: инструкция по установке
- Coolify: обзор build packs
- Coolify: документация по firewall
- Coolify: устранение проблем с Let's Encrypt
- Coolify: тарифы
- Coolify: релизы v4.1.0 на GitHub
- Anthropic: обзор Claude Code
- Timeweb Cloud: VPS
- FirstVDS: VPS
- Selectel: VPS/VDS
- Vercel: тарифы
Дополнительные материалы — на Ailoot.
Подробнее
Вопросы и ответы
Какой URL должен вернуть JSON после развёртывания?
Скопируйте URL приложения из Domains Coolify и откройте путь /api/users. Корневой адрес — главная страница. JSON-эндпоинт /api/users задан в примере проекта.
Как рассчитать экономию самостоятельного хостинга?
Сложите месячные VPS, копии, диски, трафик, мониторинг и дополнительную панель в C. Полная цена первого года — 12C плюс 17–34 часа по вашей ставке. Сравните с годовой оценкой Vercel и учтите сопоставимое обслуживание обеих сторон.