Docker работает на принципах клиент-серверной архитектуры. eternalhost.net Пользователь отдаёт команду с помощью клиентского интерфейса Docker-демону, развёрнутому на Docker-хосте. eternalhost.net Например, скачать готовый образ из реестра (хранилища Docker-образов) с помощью команды docker pull. eternalhost.net
Основные компоненты Docker:
- Клиент. practicum.yandex.ru Это инструмент, в который пользователь отдаёт команды: поднять контейнер, настроить его, перезагрузить или удалить. practicum.yandex.ru
- Демон. practicum.yandex.ru Это фоновый процесс, который управляет контейнерами. practicum.yandex.ru Он принимает команды от клиента и делает то, что его попросили. practicum.yandex.ru Плюс он всегда следит за контейнерами и в любой момент знает их состояние. practicum.yandex.ru
- Хост. practicum.yandex.ru Это сервер, на котором развёрнут Docker. practicum.yandex.ru Именно на нём в фоне работает демон, и на нём поднимаются контейнеры. practicum.yandex.ru
- Реестр. practicum.yandex.ru Это хранилище образов, из которых демон разворачивает контейнеры. practicum.yandex.ru Это может быть общественный docker-хаб, в котором хранятся готовые образы, или персональное хранилище, где лежат образы, сконструированные пользователем. practicum.yandex.ru
Основной принцип работы Docker — контейнеризация приложений. eternalhost.net Этот тип виртуализации позволяет упаковывать программное обеспечение по изолированным средам — контейнерам. eternalhost.net Каждый из этих виртуальных блоков содержит все нужные элементы для работы приложения. eternalhost.net Это даёт возможность одновременного запуска большого количества контейнеров на одном хосте. eternalhost.net