Увидел свет (http://blog.docker.com/2014/08/announcing-docker-1-2-0/) релиз инструментария для управления изолированными Linux-контейнерами Docker 1.2, предоставляющего высокоуровневый API для манипуляции контейнерами на уровне изоляции отдельных приложений. В частности, Docker позволяет не заботясь о формировании начинки контейнера запускать произвольные процессы в режиме изоляции и затем переносить и клонировать сформированные для данных процессов контейнеры на другие серверы, беря на себя всю работу по созданию, обслуживанию и сопровождению контейнеров. Код Docker написан на языке Go и распространяется (https://github.com/dotcloud/docker/) под лицензией Apache 2.0.Инструментарий базируется на применении встроенных в ядро Linux штатных механизмов изоляции на основе пространств имён (namespaces) и групп управления (cgroups). Для создания контейнеров предлагается использовать libcontainer (обёртка над namespaces и cgroups), также возможно применение lxc (http://lxc.sourceforge.net/), libvirt, systemd-nspawn и других систем изоляции. Для формирования контейнера достаточно загрузить базовый образ окружения (docker pull base), после чего можно запускать в изолированных окружениях произвольные приложения (например, для запуска bash можно выполнить "docker run -i -t base /bin/bash").
Из особенностей выпуска Docker 1.2 можно отметить:
- В команду "docker run" добавлен флаг "--restart", дающий возможность определить политику перезапуска контейнера. Среди доступных опций: "no" (по умолчанию) - не перезапускать контейнер после завершения его работы, "on-failure" - перезапускать только после нештатного завершения (выход с кодом ошибки, отличным от 0), "always" - всегда перезапускать контейнер, независимо от кода возврата;- Добавлены опции --cap-add и --cap-drop для добавления или изъятия предоставленных контейнеру capabilities (например, --cap-add=NET_ADMIN, --cap-drop=CAP_CHOWN, --cap-add=ALL, --cap-drop=MKNOD);
- В команду "docker run" добавлена опция --device для указания устройств, пробрасываемых в контейнер (например, "docker run --device=/dev/snd:/dev/snd");
- Поддержка изменения содержимого файлов /etc/hosts, /etc/hostname и /etc/resolv.conf, размещаемых внутри контейнера. Изменённые файлы сохраняются только в текущем образе, но не копируются при создании новой сборки с использованием "docker build";
- Реализация прокси, перенаправляющего трафик в контейнеры, теперь работает в виде отдельного процесса для каждого соединения.Дополнительно можно отметить первый выпуск (https://clusterhq.com/blog/data-focused-docker-clustering/) Flocker, системы управления кластером изолированных контейнеров и разделами с данными, размещаемыми внутри контейнеров. Код проекта распространяется (https://github.com/ClusterHQ/flocker) под лицензией Apache. Flocker позволяет упростить управление накапливаемыми в процессе работы контейнера данными, в условиях применения кластерной инфраструктуры, включающей несколько серверов. В частности, Flocker может использоваться для автоматизации переноса данных вместе с Docker-контейнерами, в которых выполняются такие приложения, как СУБД и хранилища в форматах ключ/значение.
Например, при помощи Flocker можно развернуть приложение в контейнерах на нескольких хостах, после чего программа получит доступ к хранилищу (пока поддерживается только ZFS), которое будет привязано к этой программе и будет следовать за контейнером при его миграции от одного хоста к другому (актуальный срез ZFS-раздела будет реплицирован на другой хост).
URL: http://blog.docker.com/2014/08/announcing-docker-1-2-0/
Новость: http://www.opennet.me/opennews/art.shtml?num=40435
Жду Openstack Icehouse с Докером. Пишут, что через Heat прикрутили, ибо Нова для этого не сильно предназначена. Кто пробовал? Кто выжил? Вообще работает?
Ubuntu OpenStack
SUPPORTED HYPERVISORS
->Docker<- , ESXi , KVM , LXC , QEMU , Xen
SUPPORTED GUESTS
Linux , Windows
http://www.openstack.org/marketplace/distros/distribution/ca...
В гаване был пробный вариант, "на посмотреть", но он даже работал через Нову. Ты тестил в Айсхаузе через Heat?
Сомневаюь - хиту больше надо (имхо) провижионить реальные серваки через АПИ хостеров, по крайне мере то что я слышал. Да и с нейтроном пока не все гладко
Да, я тоже удивлён :)
http://blog.docker.com/2014/03/docker-will-be-in-openstack-i.../И с нейтроном у меня в половине случаев была проблема "незапуска". Юзаю flat nova legacy network
Docker - няшный. Успехов проекту. Обновляюсь уже, хочется глянуть на новые плюшки сабжа.
> Docker - няшный. Успехов проекту. Обновляюсь уже, хочется глянуть на новые плюшки
> сабжа.Полностью согласен.
Обвалил мне однажды всё ведро, до паники, при запуске контейнера, но думаю, скоро допилят.
>срез ZFS-раздела будет реплицированрепликация синхронная или асинхронная? не случится ли тормозов в первом случае или цирка с обезьянкой без бекапов монги во втором?
Открытый ZFS не умеет синхронно реплицироваться.
Пожалуйста, умные люди, опишите дураку основные юзкейсы сабжа.
>опишите дуракуYOBA-интерфейс для LXC, который в свою очередь можно использовать как контейнер для проприетарщины.