Когда появляется первый домашний сервер, довольно быстро возникает вопрос: что лучше установить — Proxmox VE или обычный Linux с Docker и Portainer?
На первый взгляд эти решения похожи. И Proxmox, и Portainer позволяют управлять сервисами через браузер, запускать приложения, контролировать ресурсы и следить за состоянием системы.
Но на самом деле они решают разные задачи.
Упрощённо:
Proxmox
→ виртуализирует целые компьютеры
Docker
→ контейнеризирует приложения
Portainer
→ управляет Docker через браузер
Поэтому вопрос обычно должен звучать не:
Proxmox или Docker?
а скорее:
Нужны ли мне виртуальные машины
или
мне достаточно контейнеров Docker?
А иногда лучший ответ вообще такой:
Proxmox
+
Linux VM
+
Docker
+
Portainer
Разберёмся, когда имеет смысл каждый вариант.
В чём главное отличие
Допустим, у нас есть физический Mini PC:
Intel CPU
32 GB RAM
1 TB NVMe
Если установить обычный Ubuntu Server с Docker, схема будет выглядеть так:
Hardware
│
└── Ubuntu Server
│
└── Docker
│
├── Portainer
├── Vaultwarden
├── Uptime Kuma
├── Paperless-ngx
└── другие приложения
Все приложения используют одну операционную систему.
С Proxmox архитектура другая:
Hardware
│
└── Proxmox VE
│
├── Ubuntu VM
│ │
│ └── Docker
│ ├── Portainer
│ ├── Vaultwarden
│ └── Uptime Kuma
│
├── Windows VM
│
├── Home Assistant
│
└── LXC
Proxmox создаёт отдельные виртуальные системы.
Docker запускает отдельные приложения внутри одной системы.
Docker — если нужны приложения
Docker особенно хорош в ситуации, когда сервер используется прежде всего для self-hosted приложений.
Например:
Vaultwarden
Uptime Kuma
Portainer
Immich
Paperless-ngx
Jellyfin
Home Assistant
Nginx Proxy Manager
Gotify
Umami
Для каждого приложения можно создать отдельный Compose-файл:
/opt/
├── portainer/
├── uptime-kuma/
├── vaultwarden/
├── paperless/
└── gotify/
А затем запускать сервисы через:
docker compose up -d
Portainer при этом предоставляет удобный веб-интерфейс.
Почему Docker расходует меньше ресурсов
Контейнер Docker не запускает отдельную полноценную операционную систему.
Все контейнеры используют ядро Linux хоста.
Поэтому схема примерно такая:
Linux Kernel
│
├── Container 1
├── Container 2
├── Container 3
└── Container 4
Контейнер может занимать десятки или сотни мегабайт памяти.
Полноценной VM обычно нужно значительно больше.
Например:
Ubuntu VM
RAM: 4 GB
Windows VM
RAM: 8 GB
маленький Docker container
RAM: 50–300 MB
Разумеется, реальное потребление зависит от приложения, но сама технология Docker значительно легче виртуальной машины.
Proxmox — если нужны отдельные системы
Proxmox становится особенно полезным, когда сервер должен выполнять несколько совершенно разных ролей.
Например:
Ubuntu Docker Server
Windows 11
Home Assistant
тестовый Debian
VPN Server
отдельный сервер разработки
В таком случае разделение на виртуальные машины очень удобно.
Каждая система получает собственные:
CPU
RAM
Disk
Network
Operating System
Например:
Proxmox
│
├── VM 100 — Ubuntu Docker
│ 4 CPU
│ 8 GB RAM
│
├── VM 101 — Windows 11
│ 8 CPU
│ 16 GB RAM
│
└── CT 102 — Monitoring
1 CPU
1 GB RAM
Если Windows перестанет работать, Docker-сервер продолжит работать независимо.
Portainer и Proxmox нельзя напрямую сравнивать
Здесь есть важный момент.
Portainer не является аналогом Proxmox.
Portainer — это панель управления Docker.
Условно:
Proxmox Web UI
→ управляет VM и LXC
Portainer
→ управляет Docker containers
Поэтому правильнее сравнивать:
Proxmox VE
с:
Linux + Docker
А Portainer уже является дополнительным интерфейсом для Docker.
Сравнение
| Возможность | Docker + Portainer | Proxmox |
|---|---|---|
| Docker-контейнеры | Отлично | Обычно внутри VM |
| Виртуальные машины | Нет | Да |
| Windows | Нет | Да |
| Linux VM | Нет | Да |
| LXC | Нет | Да |
| Web UI | Portainer | Встроенный |
| Snapshots | Ограниченно | Да |
| Backup VM целиком | Нет | Да |
| PCIe Passthrough | Обычно не нужен | Да |
| USB Passthrough | Через Linux | Да |
| Расход RAM | Очень низкий | Выше |
| Простота | Выше | Ниже |
| Изоляция систем | Ниже | Выше |
| Масштабирование домашней лаборатории | Хорошее | Отличное |
Где Docker значительно удобнее
Представим небольшой Mini PC:
Intel N100
16 GB RAM
512 GB SSD
На нём нужно запустить:
Uptime Kuma
Vaultwarden
Portainer
Gotify
AdGuard Home
Cloudflared
В таком случае установка Proxmox может оказаться лишним уровнем.
Можно просто использовать:
Ubuntu Server
+
Docker
+
Portainer
Получается простая система:
Hardware
│
Ubuntu
│
Docker
│
Apps
Меньше компонентов означает меньше вещей, которые необходимо обновлять и обслуживать.
Где Proxmox значительно удобнее
Теперь представим более мощный сервер:
8 Core CPU
64 GB RAM
2 TB NVMe
И требуется:
Docker Server
Windows 11
Home Assistant
тестовая Ubuntu
несколько Linux-сервисов
Здесь Proxmox становится значительно интереснее:
Hardware
│
Proxmox
│
├── Ubuntu Docker VM
├── Windows VM
├── Home Assistant VM
└── LXC
Каждая система изолирована и может обслуживаться независимо.
Главное преимущество Docker — простота
Docker позволяет очень быстро развернуть приложение.
Например, обычный сервис может выглядеть так:
services:
uptime-kuma:
image: louislam/uptime-kuma:2
container_name: uptime-kuma
restart: unless-stopped
volumes:
- ./data:/app/data
Запуск:
docker compose up -d
Через несколько секунд приложение работает.
Удалить его тоже просто.
При этом Compose-файл можно перенести на другой сервер.
Например:
старый сервер
│
└── docker-compose.yml
│
▼
новый сервер
Это одно из главных преимуществ Docker.
Главное преимущество Proxmox — изоляция
В Proxmox можно полностью разделить разные системы.
Например:
VM 100
Docker Server
VM 101
Windows
VM 102
Test Linux
Если в тестовой системе что-то сломалось:
VM 102
↓
сломалась
это обычно никак не влияет на:
VM 100
VM 101
Можно просто удалить VM и создать новую.
Именно поэтому Proxmox особенно популярен в домашних лабораториях.
Snapshots
Одно из больших преимуществ Proxmox — snapshots.
Допустим, нужно обновить Windows.
Перед обновлением:
Windows VM
│
└── Snapshot
│
└── before-update
После этого выполняется обновление.
Если возникла проблема, можно вернуться к предыдущему состоянию.
В Docker подход обычно другой.
Вместо snapshot контейнера чаще сохраняют:
Compose-файл
+
Volumes
+
Database backup
А сам контейнер при необходимости создают заново.
Это соответствует философии Docker:
контейнер можно уничтожить
и создать снова
Резервное копирование
В Docker обычно резервируют данные приложений.
Например:
Vaultwarden
│
└── ./data
MariaDB
│
└── database dump
Paperless
│
└── data + database
Сам контейнер резервировать обычно не требуется.
Он снова создаётся из image.
В Proxmox можно сохранить практически всю виртуальную машину:
VM
│
├── Disk
├── Configuration
└── Hardware settings
│
▼
Backup
После восстановления получается практически та же система.
Для сложных серверов это очень удобно.
Docker проще переносить
Допустим, Docker-приложение работает на старом сервере.
Для миграции часто достаточно перенести:
docker-compose.yml
.env
data/
и выполнить:
docker compose up -d
С Proxmox переносится уже целая виртуальная машина.
Это может быть:
20 GB
50 GB
200 GB
500 GB
Поэтому Docker обычно более гибкий для отдельных приложений.
Proxmox лучше для Windows
Docker не является способом запуска полноценной Windows 11.
Если на сервере требуется Windows:
Windows 11
Windows Server
специализированная Windows-программа
Proxmox подходит намного лучше.
Схема:
Proxmox
│
└── Windows VM
При необходимости можно передать VM:
GPU
USB
PCIe
Network Adapter
Это позволяет использовать виртуальную Windows практически как отдельный компьютер.
Docker лучше для множества небольших сервисов
Если создать отдельную VM для каждого небольшого приложения:
VM 1 — Uptime Kuma
VM 2 — Vaultwarden
VM 3 — Gotify
VM 4 — Umami
VM 5 — Portainer
получится очень много лишних операционных систем.
Для Docker достаточно:
Ubuntu VM
│
└── Docker
│
├── Uptime Kuma
├── Vaultwarden
├── Gotify
├── Umami
└── Portainer
Одна ОС обслуживает десятки контейнеров.
Это намного экономнее.
Что происходит при перезагрузке
При Docker-схеме:
Ubuntu
↓
перезагрузка
↓
все Docker-сервисы временно недоступны
В Proxmox ситуация похожая на уровне хоста:
Proxmox
↓
перезагрузка
↓
все VM временно недоступны
Но внутри Proxmox можно независимо перезагрузить отдельную VM.
Например:
перезагрузить Windows
не затрагивая:
Docker VM
Home Assistant
LXC
Это ещё одно преимущество виртуализации.
Обновления
Docker-сервер обычно состоит из:
Linux
Docker Engine
Containers
Необходимо обновлять сам Linux и контейнеры.
Proxmox добавляет дополнительный слой:
Proxmox
│
└── Ubuntu VM
│
└── Docker
│
└── Containers
Теперь нужно следить за:
Proxmox
Ubuntu VM
Docker
Containers
Поэтому Proxmox даёт больше возможностей, но одновременно требует немного больше администрирования.
Плюсы и минусы
- Docker + Portainer: минимальный расход ресурсов, простая миграция, быстрый запуск приложений, удобный Docker Compose, огромное количество готовых контейнеров и простое резервное копирование конфигурации. Минусы — нельзя нормально запускать полноценные Windows/Linux VM, изоляция ниже, а все контейнеры зависят от одной хостовой ОС.
- Proxmox: полноценные VM и LXC, хорошая изоляция, snapshots, удобные backup, passthrough оборудования, Windows и Linux одновременно, возможность построения кластера. Минусы — больше расход RAM и диска, более сложная архитектура и дополнительный уровень администрирования.
- Proxmox + Docker: объединяет преимущества обоих подходов. Минус — появляется несколько уровней инфраструктуры, которые тоже нужно обновлять, резервировать и контролировать.
Когда выбрать только Docker
Docker имеет смысл выбрать, если сервер нужен в основном для self-hosted приложений.
Например:
Mini PC
16 GB RAM
512 GB SSD
Ubuntu Server
│
└── Docker
│
├── Portainer
├── Vaultwarden
├── Uptime Kuma
├── Immich
└── Gotify
Такая система проста, экономична и легко переносится.
Для многих домашних серверов этого более чем достаточно.
Когда выбрать Proxmox
Proxmox имеет смысл, если планируются разные операционные системы или сервер используется как домашняя лаборатория.
Например:
Proxmox
│
├── Windows 11
├── Ubuntu Server
├── Home Assistant
├── Debian Test
└── LXC
Особенно полезен Proxmox, если сервер имеет:
32 GB RAM
64 GB RAM
или больше
Тогда ресурсы можно удобно распределять между несколькими системами.
Когда выбрать Proxmox + Docker
Для более серьёзного домашнего сервера это, пожалуй, самый интересный вариант.
Архитектура:
Hardware
│
└── Proxmox VE
│
├── Ubuntu Docker VM
│ │
│ └── Docker
│ │
│ ├── Portainer
│ ├── Vaultwarden
│ ├── Uptime Kuma
│ ├── Paperless
│ └── другие приложения
│
├── Windows VM
│
├── Home Assistant
│
└── LXC
Здесь каждый инструмент занимается своей задачей:
Proxmox
→ управляет серверами
Docker
→ запускает приложения
Portainer
→ управляет Docker
Это хорошее разделение ответственности.
Какой вариант выбрать для слабого Mini PC
Если имеется, например:
Intel N100
8 GB RAM
256 GB SSD
и нужно только несколько приложений, мы бы выбрали:
Ubuntu Server
+
Docker
+
Portainer
Proxmox здесь тоже будет работать, но преимуществ может оказаться меньше, чем дополнительной сложности.
Если памяти уже:
16–32 GB
и хочется экспериментировать с разными системами, Proxmox становится намного интереснее.
Какой вариант выбрать для мощного домашнего сервера
Для системы примерно такого уровня:
6–12 CPU cores
32–64 GB RAM
1–2 TB NVMe
мы бы уже серьёзно рассматривали Proxmox.
Например:
Proxmox
│
├── Docker VM — 8 GB
├── Windows VM — 16 GB
├── Home Assistant — 4 GB
└── остальные ресурсы
Получается очень гибкая домашняя инфраструктура.
Не нужно виртуализировать всё подряд
Proxmox иногда вызывает желание создать отдельную VM практически для каждого сервиса.
Но это не всегда имеет смысл.
Например, вместо:
VM → Uptime Kuma
VM → Vaultwarden
VM → Gotify
VM → Portainer
обычно разумнее:
Ubuntu VM
│
└── Docker
│
├── Uptime Kuma
├── Vaultwarden
├── Gotify
└── Portainer
VM стоит использовать для разделения систем, а Docker — для разделения приложений.
Это простое правило помогает избежать чрезмерно сложной инфраструктуры.
Наша оценка
Нельзя сказать, что Proxmox лучше Docker или Docker лучше Proxmox.
Они работают на разных уровнях.
Если сервер нужен только для нескольких приложений, оптимальным вариантом чаще всего будет:
Linux
+
Docker
+
Docker Compose
+
Portainer
Это просто, быстро и экономно.
Если же сервер должен запускать Windows, несколько Linux-систем, Home Assistant, тестовые окружения или другие независимые системы, намного интереснее становится:
Proxmox VE
А для более развитого домашнего сервера AppsHome рекомендует сочетать обе технологии:
Proxmox VE
+
Ubuntu VM
+
Docker Compose
+
Portainer
+
регулярные Backups
Такое разделение получается логичным:
Proxmox
→ виртуализация
Docker
→ контейнеризация
Portainer
→ удобное управление контейнерами
Именно такой подход позволяет начать с нескольких простых сервисов, а затем постепенно превратить домашний сервер в полноценную инфраструктуру, не смешивая виртуальные машины, операционные системы и приложения в один большой монолит.
