Yandex Cloud — это полноценное энтерпрайз-облако: managed-базы данных, объектное хранилище, сети, управление доступом. Всё это там есть, и продукт честно сильный — вопрос не в качестве, а в цене входа для маленького проекта. Serverless-контейнеры принимают не исходники, а собранный образ, а счёт собирается из метров по каждому ресурсу: время работы, память, трафик. Ниже — честное сравнение, включая случаи, когда большое облако явно выигрывает, и когда проще выложить код на Dockbox и получить HTTPS-ссылку.
Почему в большое облако попадают не сразу
Типичный маршрут выглядит так: создать организацию и каталог, разобраться с сервисными аккаунтами и ролями доступа, настроить сети, написать Dockerfile, собрать образ, запушить его в registry — и только потом создать контейнер, который наконец отвечает по URL. Yandex Cloud устроен так намеренно. Энтерпрайз-облако обязано держать команды, роли и десяток связанных сервисов, и эта машинерия где-то должна жить.
Платформа деплоя устроена иначе: вы загружаете папку с кодом или Git-репозиторий, она сама определяет язык, собирает проект и выдаёт публичную HTTPS-ссылку. Образа собирать не нужно, в registry пушить не нужно, платить за метры — тоже.
Сколько людей будет трогать инфраструктуру
Сервисные аккаунты и политики доступа важны, когда в инфраструктуру лезут несколько человек и есть требования по безопасности. Это сильная сторона большого облака, и для команды с регламентами она незаменима. Но если проект ваш один, этот слой — просто настройка, которую нужно пройти до первого запуска. В Dockbox сервисных аккаунтов и ролей нет: есть панель и проекты внутри неё.
Нужны ли вам managed-сервисы
Managed-база, объектное хранилище, очереди, кластер Kubernetes — это то, за чем в облако и идут. Если такие сервисы составляют основу проекта, оставаться в Yandex Cloud — честный ответ, замена их на что-то проще будет шагом назад.
Чего в Dockbox нет. Отдельной managed-базы как сервиса, объектного хранилища и CDN здесь не найти. База данных запускается отдельным сервисом рядом с приложением — через docker-compose, данные лежат в именованном томе из вашего файла. Либо вы подключаете внешнюю базу и передаёте строку подключения секретом. Медиафайлы живут в постоянной папке /data, которая переживает обновления кода.
Путь от кода до ссылки: образ или git push
Serverless-контейнеры не принимают исходный код — только готовый образ, и повторять сборку приходится на каждое изменение:
docker build -t registry.example/app:latest .
docker push registry.example/app:latest
Dockbox работает наоборот: вы отдаёте сам код — ZIP-архивом или через Git-репозиторий, включая приватный. Язык и тип проекта определяются по файлам, сборка идёт на нашей стороне. Если свой Dockerfile уже есть, платформа его использует, но писать его специально только ради публикации не нужно.
Как считается счёт: метры против тарифа
В облаке вы платите по метрам: время работы, память, трафик и хранение образов считаются отдельно. Это удобно, когда нагрузка пиковая и за простой платить не хочется, — но итог за месяц вы оцениваете сами, и он может неприятно удивить.
В Dockbox вы выбираете тариф и знаете сумму заранее, сколько бы человек ни открыли ссылку. Просмотры и объём трафика на счёт не влияют — это главное отличие от оплаты по метрам.
Как перенести проект: что забрать и что убрать
Возьмите исходники, файл зависимостей (requirements.txt, package.json, go.mod) и список секретов: токены, ключи, строки подключения. Не кладите в архив node_modules, venv и другие папки зависимостей — их установят во время сборки.
Две правки в коде обязательны: приложение должно слушать порт из переменной PORT и адрес 0.0.0.0, а не фиксированный порт, — это причина номер один, по которой ссылка не открывается.
PORT=<выдаёт платформа>
HOST=0.0.0.0
DATABASE_URL=<строка подключения>
Если приложение писало файлы в объектное хранилище облака, направьте его в постоянную папку /data или во внешний сервис.
Что проверить после переезда
Откройте ссылку и следите за логами в панели — они идут в реальном времени, поэтому ошибка старта видна сразу, а не как пустая страница. Убедитесь, что секреты доехали и приложение читает их как переменные окружения, а всё, что должно переживать обновление кода, лежит в /data. Домен, который раньше смотрел в облако, подключается на тарифе Pro из раздела «Домены»: вводите домен, добавляете показанную DNS-запись и нажимаете проверку.
Сколько это стоит и как работают контейнеры
Своим сервером и nginx заниматься не нужно: контейнеры на Dockbox работают постоянно, без «засыпания» и без лимита по часам. Ссылка отвечает в момент открытия, без «прогрева».
Starter — 990 ₽/мес, первый месяц бесплатно. 1 vCPU, 2 GB RAM, 20 GB SSD, один проект.
Pro — 2 490 ₽/мес. 2 vCPU, 4 GB RAM, до пяти проектов.
Team — 4 990 ₽/мес — запас ресурсов и проектов для команд.
Цены — только в рублях, без пересчётов по курсу. Тарифы и текущие лимиты — на dockbox.host.
Частые вопросы
Что выбрать, если сейчас один проект, но он может вырасти?
Начинайте с того, что быстрее даёт результат, — обычно это платформа, где достаточно загрузить код. Переехать в большое облако позже несложно: код остаётся вашим, а Dockerfile, когда он появится, работает и там, и здесь. Переходите, когда действительно появились команда, требования по доступу или managed-сервисы, а не в ожидании их.
Можно ли перенести проект с Yandex Cloud без правок кода?
Обычно да, если приложение читает настройки из переменных окружения и слушает порт из PORT. Менять придётся то, что привязано к самим облачным сервисам: вызовы объектного хранилища, managed-базы, внутренние сетевые адреса. Всё остальное — обычный код, который просто запускается в другом месте.
Что делать с базой данных во время переезда?
Два варианта. Запустить базу отдельным сервисом рядом с приложением: в docker-compose платформа поднимает все связанные сервисы одного проекта, а данные лежат в именованном томе из вашего файла. Либо оставить внешнюю базу и передать строку подключения секретом — приложение продолжит говорить туда же, куда и раньше.
Есть ли в Dockbox объектное хранилище или managed-сервисы?
Нет. Отдельного объектного хранилища, CDN и managed-базы как сервиса здесь нет — именно за этим идут в полноценное облако. Файлы, которые пишет приложение, живут в постоянной папке /data: она переживает обновления кода и перезапуски, а список файлов виден в панели. Для больших объёмов медиа подключайте внешний сервис.
Изменится ли счёт, если сайт станет посещаемым?
Нет, тариф — фиксированная сумма, она не зависит от просмотров и объёма трафика. Лимиты тарифа касаются ресурсов самого проекта. Это и есть главное отличие от оплаты по метрам, где счёт собирается из времени работы, памяти и трафика.