The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск cистемы управления контейнерной виртуализацией Docker 1.6

17.04.2015 23:35

Представлен релиз инструментария для управления изолированными Linux-контейнерами Docker 1.6, предоставляющего высокоуровневый API для манипуляции контейнерами на уровне изоляции отдельных приложений. В частности, Docker позволяет, не заботясь о формировании начинки контейнера, запускать произвольные процессы в режиме изоляции и затем переносить и клонировать сформированные для данных процессов контейнеры на другие серверы, беря на себя всю работу по созданию, обслуживанию и сопровождению контейнеров. Код Docker написан на языке Go и распространяется под лицензией Apache 2.0.

Инструментарий базируется на применении встроенных в ядро Linux штатных механизмов изоляции на основе пространств имён (namespaces) и групп управления (cgroups). Для создания контейнеров предлагается использовать libcontainer (обёртка над namespaces и cgroups), также возможно применение lxc, libvirt, systemd-nspawn и других систем изоляции. Для формирования контейнера достаточно загрузить базовый образ окружения (docker pull base), после чего можно запускать в изолированных окружениях произвольные приложения (например, для запуска bash можно выполнить "docker run -i -t base /bin/bash").

Из добавленных в Docker 1.6 новшеств можно отметить:

  • Возможность привязки определяемых пользователем меток к контейнерам и образам для дальнейшего использования данных меток в утилитах. Метки определяются в формате "ключ=значение" и задаются для образов в файлах Dockerfile командой LABEL, а для запущенных контейнеров при помощи опции "--label" ("-l"). После определения метки, её можно использовать в качестве идентификатора контейнера или образа, например, "docker images -f label=com.example.foo=bar" или "docker ps -a -f label=com.example.bar=baz";
  • Возможность подключения драйверов для ведения логов, позволяющих реализовать различные схемы сохранения системного журнала, в том числе передачи логов контейнера на внешний syslog-сервер. Подключение драйверов логов осуществляется по аналогии с драйверами хранилищ. В настоящее время доступно три драйвера: json-file (по умолчанию), syslog и none;
  • Возможность адресации образов по цифровому идентификатору, формируемому в виде хэша, неизменного для содержимого контейнера. Идентификатор задаётся в формате namespace/repository@digest, по аналогии с адресацией по тегам (namespace/repository:tag). Цифровой идентификатор можно использовать для получения, сборки и запуска образа;
  • Добавлена опция "--cgroup-parent", позволяющая запустить контейнер под индивидуальным cgroup, созданным и обслуживаемым пользователем.
  • При настройке демона docker теперь можно определить параметры ulimit, применяемые по умолчанию для всех контейнеров. Например, "docker -d --default-ulimit nproc=1024:2048 --default-ulimit nofile=100:200" установит лимит на число процессов и открытых файлов для дочерних процессов всех запускаемых контейнеров. Настройки по умолчанию можно переопределить на этапе запуска контейнера, например "docker run -d --ulimit nproc=2048:4096 httpd";
  • Возможность внести изменения в образ контейнера на лету, без его полной пересборки. Для внесения изменений следует использовать команды "commit --change" и "import --change", изменения задаются в виде инструкций в формате Dockerfile;
  • Предварительный выпуск версии клиента docker для платформы Windows, подготовленного совместно с инженерами из компании Microsoft.
  • Выпуск инструмента Machine 0.2, предназначенного для быстрого развёртывание хостов в гостевых окружениях систем виртуализации VirtualBox, VMware, AWS, Digital Ocean и Microsoft Azure. Осуществляет создание начинки сервера, установку на него Docker и настройку клиента для работы с данным сервером. В новой версии добавлен программный интерфейс для создания драйверов чистильщиков, реализован более надёжный и целостный встроенный механизм управления начинкой серверов, добавлена команда для генерации TLS-сертификатов;
  • Выпуск инструмента Swarm 0.2, предоставляющего средства кластеризации для упакованных в контейнеры приложений. Swar даёт возможность управлять кластером из нескольких хостов Docker (например, созданных с использованием Docker Machine) в форме работы с одним виртуальным хостом. Так как Swarm использует штатный Docker API, он может применяться для управления и другими поддерживающими данный API инструментами, такими как dokku, fig, krane, flynn, deis, docker-ui, shipyard, drone.io, Jenkins. В новой версии реализована новая стратегия планировщика для распределения контейнеров по узлам кластера, добавлена поддержка дополнительных команд docker, обеспечена возможность задания драйверов для поддержки различных видов кластерных систем, таких как Mesos;
  • Выпуск инструмента Docker Compose 1.2, позволяющего организовать работу распределённого на несколько хостов приложения, в работу которого вовлечено несколько контейнеров, запущенных в кластере на базе Docker Swarm. В новой версии появилась возможность создания конфигураций, включающих настройки из других файлов Compose, что позволяет уйти от дублирования настроек при создании конфигурации приложения для разных окружений или обеспечить совместного использование единого блока конфигурации разными приложениями.

Дополнительно, объявлено об очередном раунде инвестиций, в рамках которого компания Docker получила 95 млн долларов США.

  1. Главная ссылка к новости (http://blog.docker.com/2015/04...)
  2. OpenNews: Docker-контейнеры для запуска популярных декстоп-приложений
  3. OpenNews: Выпуск Rocket 0.2, конкурирующего с Docker инструментария управления контейнерами
  4. OpenNews: Проект CoreOS представил Rocket, конкурирующий с Docker инструментарий управления контейнерами
  5. OpenNews: Canonical и Docker развивают LXD, гипервизор для изолированных контейнеров (дополнено)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/42058-docker
Ключевые слова: docker
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (24) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 00:06, 18/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    ЭЭЭЭЭээ,он на базе Hyper-V там работает? Любопытно ж.
     
     
  • 2.7, _KUL (ok), 03:42, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так это же просто клиент для коннекта к линукс демону?!
     
  • 2.17, Аноним (-), 19:34, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    пока да, но к релизу вроде как обещают полноценные контейнеры
     

  • 1.2, Аноним (-), 00:18, 18/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Докер под Уиндоус работает так:
    - Докер.УЧУ запускает виртуальную машину с линуксом, которая запускает докер демон, который запускает контейнер с линуксом в котором запускается приложение, рельныкакиенить например.
     
     
  • 2.3, Аноним (-), 00:20, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    МыМожемГлубже.ЖРГ
     
  • 2.4, Ivan1986 (?), 02:07, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Кстати замечу, что обычно так на виндоус все и портируется - тупо запускаем в виртуалке линукс
     
     
  • 3.5, Аноним (-), 02:47, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не удивлюсь, если они его встроят из-за этого в какой нить windows server 10r2. А чо фигачишь докерфайл прям в Visual Studio где разворачивается какой-нить CentOS с джанго или рельсами и вперед. Для конечного потребителя продуктов MS воркфлоу не меняется, хоть по дабблику на ярлык это запускай, хоть через Диспетчер Сервера или как его там.
     
  • 2.6, ага (?), 03:36, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так работает boot2docker, а портировали клиента который команды раздает, а не контейнеры крутит
     

  • 1.8, Genry_U (?), 07:21, 18/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Peter Lemenkov (RedHat) про Docker:
    "Red Hat, конечно, вынуждена работать и с ним, из-за сильного запроса снизу от вчерашних пользователей той платформы, постепенно доросших до управления большими системами, но на самом деле его архитектурные недостатки видны невооруженным глазом."
     
     
  • 2.14, Аноним (-), 13:42, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Для RedHat все плохо - что не контролируется ими. А то что ими контролируется - по умолчанию хорошо.
    Как пример systemd - им хорошо, а весь мир плюется.
     
     
  • 3.16, derfenix (ok), 18:45, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Кучка хейтеров - далеко не весь мир.
     
     
  • 4.24, alex (??), 14:46, 20/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Имхо, upstart лучше, синтаксис более адекватный. В systemd помойка какая-то.
     
     
  • 5.26, Профессор Преображенский (?), 22:05, 20/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Какой тонкий вброс
     
  • 2.19, Аноним (-), 21:05, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Можно подробнее про архитектурные недостатки?
     
     
  • 3.23, Аноним (-), 10:55, 20/04/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Архитектура проекта не включает systemd.
     

  • 1.11, Аноним (-), 11:12, 18/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Здравствуйте. Профи поясните возможно ли докером сделать контейнер содержащий одну программу написанную для винды и перенести все это на любой дистр линукса и вмнем запустить данную софтину и она будет нормально работать с переферией линуха (сканеры принтеры сеть)?
     
     
  • 2.12, anonymous (??), 11:24, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    нет, при чем перечисленные тут сущности можно перемешивать в любой последовательности - все равно нет
     
  • 2.18, Аноним (-), 21:05, 18/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Совсем мимо.
     
  • 2.21, 984 (?), 23:59, 19/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Да, с докером можно все. Можно виндовый контейнер запускать на маке и линухе и гарантировано все будет работать одинаково на всех трех платформах. В этом и суть технологии. Плюс, практически нулевой оверхед.
     

  • 1.15, Аноним (-), 13:48, 18/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > клиента docker для платформы Windows

    Они сделали мой день, юзают virtualbox но hyper-v не хотят, вопрос почему?
    На медне гонял Hyper-v оказалось что vbox работет куда быстрее по IO.

     
     
  • 2.20, Аноним (-), 09:21, 19/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Так это давно известно, что виртуалбох работает быстрее вымытой вари и хипстер-в. На одной из первых работ сделал переход с вари на виртуалбох, стало лучше, притом это была только 3-я версия.

    По той причине и использую на десктопе квм, ибо он быстрее виртуалбоха. На серваках тоже, ибо опенстек.

     
  • 2.25, Аноним (-), 15:26, 20/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А что такое "медня"?
     
     
  • 3.27, денис (??), 08:29, 21/04/2015 [^] [^^] [^^^] [ответить]  
  • +/
    это намедни - седня, типа
     

  • 1.22, Аноним (-), 10:22, 20/04/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    выпуск версии клиента docker для платформы Windows, подготовленного совместно с пациентами дурдома номер 3.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру