Решения · Контейнеры
Какой сервер нужен для Docker?
Контейнеры: это процессы, разделяющие одно ядро, а не маленькие виртуальные машины. Демон занимает около 100 MB, а всё остальное: просто ваши собственные процессы. Поэтому ответ скромнее, чем ожидает вопрос: прокси, приложение, база данных и кэш вместе занимают примерно 515 MB и с запасом помещаются на BD-8 за $12.90.
Сколько на самом деле занимает контейнер
Диапазоны, а не бенчмарки
Ваш образ, конфигурация и трафик влияют на эти цифры сильнее, чем может учесть любая таблица. Запустите docker stats на своём стеке: только это число относится к вам.
| Контейнер | Типичная память | Помещается на BD-8 (8 GB) |
|---|---|---|
| Обратный проксиnginx, Caddy, Traefik | 15–60 MB | 129 в верхней границе |
| Небольшое веб-приложениеNode, Python, Go: один процесс | 60–200 MB | 38 в верхней границе |
| PostgreSQL или MySQLнебольшой набор данных, пул по умолчанию | 200–500 MB | 15 в верхней границе |
| Redisкак кеш, ограниченный maxmemory | 20–200 MB | 38 в верхней границе |
| Сервис на JVMJava, Kotlin, Elasticsearch | 500–2000 MB | 3 в верхней границе |
Арифметика
Что вмещает каждый тариф
Память за вычетом 300 MB на операционную систему и 100 MB на демон, делённая на то, сколько занимают ваши контейнеры. Средний столбец: целый стек (прокси, приложение, база данных, кэш) примерно на 515 MB.
| Тариф | RAM | Целые стеки | Небольшие приложения | Диск | Цена | Развернуть |
|---|---|---|---|---|---|---|
| VPS-1 | 1 GB | 1 | 3 | 25 GB | $9.90 | Развернуть |
| BD-8 | 8 GB | 15 | 38 | 100 GB | $12.90 | Развернуть |
| BD-12 | 12 GB | 23 | 59 | 200 GB | $17.90 | Развернуть |
| BD-24 | 24 GB | 46 | 120 | 300 GB | $31.90 | Развернуть |
Второй сюрприз, с которым сталкиваются позже, это диск: образы, тома и логи незаметно накапливаются. Добавьте docker system prune в еженедельный cron заранее, а не когда это станет срочно.
Против самих себя
Когда это покупать не стоит
Управляемая контейнерная платформа стоит дороже, потому что берёт эксплуатацию на себя. За это действительно стоит платить.
VPS даёт вам root и передаёт вам обновления, перезапуски, сертификаты и ночные вызовы. Это намного дешевле и действительно требует больше работы. Если вы не хотите этим заниматься, честный ответ: управляемая платформа, и мы лучше порекомендуем её, чем продадим машину, которую в итоге забросят с непропатченным демоном, открытым в интернет. Ещё два небольших совета в том же духе: задайте ограничение памяти каждому контейнеру, чтобы при сбое погибал он, а не ваша база данных, и не беритесь за Kubernetes на одной машине: оркестратор, которому нечего распределять, это лишь лишняя сложность.
Вопросы