Встречается на собеседованиях • сегодня

В чем разница между контейнером в Docker и виртуальной машины

Docker-контейнеры и виртуальные машины (VM) различаются уровнем виртуализации и производительностью:

  1. Виртуализация:
    • VM эмулирует полноценную ОС поверх гипервизора (VirtualBox, VMware), требуя отдельного ядра и ресурсов.
    • Контейнеры используют ядро хостовой ОС через Docker Engine, изолируя процессы без эмуляции железа.
  1. Производительность:

    • Контейнеры легковесны, запускаются за секунды и потребляют минимум ресурсов.
    • VM требуют больше памяти и CPU, загрузка занимает минуты.
  2. Изоляция:

    • VM обеспечивают полную изоляцию (безопасность).
    • Контейнеры разделяют ядро ОС, что быстрее, но менее безопасно (необходимы дополнительные меры, например, SELinux).

Пример с Docker:

dockerfile
FROM openjdk:11
COPY app.jar /app.jar
CMD ["java", "-jar", "/app.jar"]

Этот контейнер использует общее ядро хоста, тогда как VM потребовала бы полноценной гостевой ОС.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы