Перейти к содержимому
К
VPS

Docker на VPS: зачем контейнеры бизнесу, а не только программистам

Разработчик говорит: «Нам нужен VPS, будем разворачивать в Docker». Заказчик кивает и идёт гуглить, что это и не пытаются ли его обмануть. Не пытаются. Но и понимать, за что вы платите, полезно — тем более что контейнеры действительно решают несколько бизнес-проблем.

Что такое контейнер

Любой сайт — это не только его код. Ему нужна конкретная версия PHP или Node.js, определённые библиотеки, база данных, настройки веб-сервера. Всё это ставится на сервер, и со временем сервер превращается в уникальный организм: никто уже не помнит, что на нём стоит и почему.

Контейнер — это коробка, в которую упакован сайт вместе со всем, что ему нужно. Коробка одинаково запускается на ноутбуке разработчика, на тестовом сервере и на боевом VPS. Docker — самый распространённый инструмент для создания таких коробок.

Аналогия — морские контейнеры. До них каждый груз грузили по-своему, и порт под каждый товар перестраивали. Со стандартным контейнером всё равно, что внутри: кран один, корабль один, правила одни.

Что это даёт заказчику

  • Переезд без боли. Сайт в контейнерах переносится на другой сервер за час: скопировать, запустить. Без контейнеров переезд «сервера с историей» — это дни и сюрпризы.
  • Одинаковое поведение. «У меня на компьютере работало» перестаёт быть отговоркой: у разработчика та же коробка, что и на сервере.
  • Изоляция. Несколько сайтов или сервисов на одном VPS не мешают друг другу. Обновили PHP для одного — второй не заметил.
  • Быстрый откат. Новая версия сломалась — вернули предыдущую коробку за минуту.
  • Смена подрядчика. Новый разработчик получает описанное окружение, а не сервер-загадку.

Последний пункт мы ценим больше всего. К нам регулярно приходят проекты «от предыдущей студии», и разница между сервером с Docker и без него — это разница между днём и неделей на то, чтобы просто запустить сайт у себя и понять, как он устроен.

Что это стоит

Docker сам по себе бесплатен. Платите вы за VPS, потому что на виртуальном хостинге контейнеры не запустить: нужен свой сервер с полным доступом. Минимальная конфигурация под небольшой сайт в контейнерах — 2 ядра и 2–4 ГБ памяти. Контейнеры добавляют немного накладных расходов, но на практике их не замечаешь.

Ещё платите временем разработчика на первичную настройку — обычно это несколько часов. Дальше поддержка такого сервера дешевле, а не дороже: всё описано в файлах, а не в голове одного человека.

Когда Docker не нужен

Честный ответ: типовому сайту на WordPress или лендингу на виртуальном хостинге контейнеры не нужны. Там всё уже настроено хостером, а от Docker будет только усложнение. Контейнеры имеют смысл, когда:

  • сайт написан на фреймворке — Laravel, Django, Node.js — и требует своего окружения;
  • на сервере живёт несколько разных проектов или сервисов;
  • есть очереди, воркеры, отдельные базы, поиск — то есть не один процесс, а система;
  • важно быстро выкатывать и откатывать версии;
  • вы хотите не зависеть от конкретного хостера или разработчика.

О чём спросить разработчика

Если вам предлагают Docker, задайте три вопроса. Где хранится описание окружения и есть ли оно в репозитории проекта. Как делаются бэкапы данных — контейнеры одноразовые, а база и загруженные файлы должны жить отдельно и копироваться. И как обновлять сервер: кто и когда обновляет сами образы, чтобы в них не копились уязвимости.

Внятные ответы на все три означают, что вам ставят рабочую систему, а не модное слово. Мы в CasperLab разворачиваем проекты на фреймворках именно так — с описанным окружением, бэкапами вне контейнеров и понятной процедурой обновления. И подбираем VPS под реальную нагрузку, а не «с запасом на всякий случай».

Арендовать VPS в CasperLab

Поможем подобрать решение под вашу задачу и рассчитаем стоимость без обязательств.

Арендовать VPS
Поделиться:
Docker — это хостинг?
Нет, это инструмент для упаковки и запуска приложений. Ему нужен сервер — обычно VPS с полным доступом. На виртуальном хостинге Docker запустить нельзя.
Нужен ли Docker для сайта на WordPress?
Как правило, нет. WordPress отлично работает на обычном виртуальном хостинге, где окружение уже настроено. Контейнеры оправданы для проектов на фреймворках, нескольких сервисов на одном сервере или при частых обновлениях.
Сколько ресурсов VPS нужно под Docker?
Для небольшого сайта в контейнерах — от 2 ядер и 2–4 ГБ памяти. Сами контейнеры почти не добавляют нагрузки, ресурсы нужны тому, что внутри них: PHP, базе данных, очередям.