Docker

Платформа для автоматизации развертывания и управления приложениями в изолированных средах — контейнерах.

Docker — это ПО для запуска приложений в контейнерах. В отличие от виртуальных машин, контейнеры используют общее ядро хостовой ОС, что снижает потребление ресурсов (RAM/CPU) и ускоряет запуск до долей секунды. Изоляция обеспечивается на уровне процессов, а не эмуляции оборудования.

Работа строится на образах (images) — неизменяемых шаблонах с кодом и зависимостями. Из образа создается контейнер. Для описания процесса сборки используется Dockerfile, а для управления оркестрацией нескольких сервисов — docker-compose.yml.

Механизмы изоляции

Docker использует функции ядра Linux: namespaces для разделения ресурсов (сеть, файловая система) и cgroups для установки жестких лимитов на потребление памяти и процессора. Это позволяет запускать десятки изолированных сервисов на одном физическом сервере.

Платформа применяется для стандартизации окружения между разработкой и эксплуатацией. Это исключает ошибки, связанные с различием версий библиотек. Например, команда docker run -p 80:80 nginx мгновенно разворачивает готовый веб-сервер без ручной настройки конфигурационных файлов системы.