Docker — контейнер исполняемых сред для ОС Linux.
Docker дополняет LXC (LinuX Containers) высокоуровневым API, который выполняется на уровне процессов. UNIX-процессы выполняются с жесткими гарантиями изоляции (isolation) и воспроизводимости (repeatability) на серверах.
Docker — отличный инструмент для автоматизации распределенных систем: развертывание крупномасштабных веб-инсталляций, кластеров баз данных, непрерываемых систем развертывания, приватных PaaS, сервис-ориентированных архитектур и т.д. Docker, который называют «будущим Linux-контейнеров», расширяет легковесную виртуализацию LXC высокоуровневым API, который функционирует на уровне процессов системы. Таким образом, Docker осуществляет запуск системных процессов с гарантированной изоляцией (используются cgroups и пространства имён в ядре Linux) и возможностью их удобного копирования/воспроизведения на других серверах (контейнеры изолированы своими корневыми файловыми системами, для этого используется AUFS).
Продукт позиционируется как фундамент для создания автоматизированных распределённых систем, таких как масштабируемые инсталляции с веб-инфраструктурой, кластерные инсталляции баз данных или частные PaaS-решения.
Исходный код Docker написан на языке программирования Go, распространяется на условиях свободной лицензии Apache License v2 и опубликован на GitHub.
Сайт разработчика:
Страница приложения на:
Что почитать?
Разместил:
10/06/2014 был представлен первый крупный релиз проекта Docker, нацеленного на предоставление автоматизированной распределённой системы для быстрой сборки, разворачивания и запуска приложений в среде GNU/Linux с помощью контейнеров на базе LXC.
По словам разработчиков, релиз Docker 1.0 показывает «зрелость» проекта и позволяет использовать его для повседневных и постоянных нужд. В Docker 1.0 представлен стабильный API, имеющий обратную совместимость и полноту функциональности. Для разработчиков новая версия Docker предлагает:
° новая инструкция COPY, которая копирует файлы и каталоги «как есть», без изменений;
° улучшения в томах (Data volumes) и инструкции ADD: в процессе построения образов сохраняются данные о владельце и права на файлы.
Инструменты для администраторов в Docker 1.0:
° появилась возможность приостанавливать и продолжать работу контейнера, что позволяет лучше контролировать распределение ресурсов системы;
° обновлён профиль безопасности для доступа к устройствам и возможностям контейнера;
° что касается хранения файлов и файловых систем, был улучшен Device Mapper, добавлена поддержка XFS, добавлена возможность использовать физическое устройство, увеличена скорость удаления контейнеров;
° со стороны IANA официально зарезервированы порты для работы с API: 2375 и 2376 (для HTTP и HTTPS соответственно).