Платить за Vercel или Heroku не очень удобно, особенно когда приходит счет за превышение лимитов. Когда возникает потребность поднять свой PaaS на дешевом VPS, выбор обычно сводится к старожилу Coolify и молодому Dokploy. Разберем, почему популярный комбайн уступает новичку и куда перекатывать свои пет-проекты. Ведь мы пишем код, чтобы поменьше работать, а не чтобы круглосуточно дебажить конфиги веб-сервера.
Установка и потребление ресурсов
Развертывание обеих панелей сводится к запуску одного bash-скрипта на чистой ОС Ubuntu.
# разворачиваем Coolify
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
# разворачиваем Dokploy
curl -sSL https://dokploy.com/install.sh | sh
По документации обе системы требуют около 1 ГБ оперативной памяти. Разница кроется в нагрузке на процессор. Coolify написан на PHP с использованием фреймворка Laravel. В простое эта связка отъедает 6–7% CPU, а при включении встроенных метрик показатель быстро растет. Для арендованного сервера за пару долларов это ощутимая потеря вычислительной мощности.
Dokploy собран на базе Next.js и TypeScript. В состоянии покоя он забирает скромные 0.8–1.5% CPU. Чтобы убедиться в этом самостоятельно, достаточно подключиться по SSH и посмотреть метрики запущенных контейнеров:
docker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
Кроме того, с Dokploy меньше сюрпризов при локальном развертывании. Если Coolify периодически требует ручной настройки файрвола и возни с ключами доступа, то его конкурент заводится с первого раза без танцев с бубном.
Архитектура проектов и бэкапы
В Coolify заложена глубокая иерархия. При создании инфраструктуры вы идете по длинному пути Teams -> Projects -> Environments -> Resources. Это отлично работает для больших команд, но избыточно для личных задач. Dokploy предлагает плоскую и понятную структуру по пути Projects -> Services.
При подключении репозиториев Dokploy нативно интегрируется не только с GitHub, но и с GitLab, Bitbucket и Gitea. Обе платформы умеют отправлять дампы баз данных в S3-совместимые хранилища. Однако Dokploy позволяет нативно бэкапить сами Docker-тома, что критично для переноса stateful-приложений. Под капотом для этого используется простая синхронизация содержимого примонтированного тома с облачным бакетом:
# пример того, как синхронизация томов работает на уровне Docker
docker run --rm \
-v my_app_data:/data \
-e AWS_ACCESS_KEY_ID=ваш_ключ \
-e AWS_SECRET_ACCESS_KEY=ваш_секрет \
amazon/aws-cli s3 sync /data s3://my-bucket/backup/
Если вы работаете за NAT без белого IP-адреса, Coolify выигрывает за счет встроенной поддержки туннелей Cloudflare. В Dokploy этот функционал настраивается вручную. Вам потребуется добавить новый сервис с образом cloudflared рядом с вашим приложением:
services:
cloudflared:
image: cloudflare/cloudflared:latest
command: tunnel run
environment:
- TUNNEL_TOKEN=ваш_токен_из_cloudflare
restart: unless-stopped
Интерфейс и лицензирование
Чистый интерфейс — главная причина миграции на Dokploy. Он ощущается как монолитное отзывчивое приложение с предсказуемым поведением. В Coolify вас встретят хаотично разбросанные кнопки Save, неочевидная навигация и навязчивые всплывающие окна с просьбами задонатить или сохранить пароль.
В вопросах лицензий все не так однозначно. Coolify распространяется как классический Open Source под лицензией Apache 2.0. Вы вольны делать с кодом что угодно. Ядро Dokploy также открыто, но мульти-серверность и превью-деплои защищены строгим лицензионным соглашением: продавать их как часть своего SaaS-решения запрещено.
Выбор инструмента под свои задачи
Для типовых проектов и небольших продакшен-решений смело ставьте Dokploy. Вы получите отзывчивый UI, низкое потребление процессора и быструю настройку сервисов.
Остаться на Coolify целесообразно при совпадении трех условий:
- нужна сложная система окружений для разделения этапов разработки;
- критична поддержка Cloudflare Tunnels прямо из графического интерфейса;
- планируется коммерческое использование платформы без оглядки на ограничения лицензии.