The OpenNET Project / Index page

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

30.06.2017 11:47  Выпуск cистемы управления контейнерной виртуализацией Docker 17.06

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

Docker 17.06 является первым выпуском, который построен на основе проекта Moby, реализующего идею построения систем контейнерной изоляции в виде набора связываемых между собой универсальных компонентов. Выпуск также сформирован в рамках новой нумерации версий (год.месяц) и раздельным формированием релизов Community Edition (CE) и Enterprise Edition (EE).

Другие изменения:

  • Поддержка многоступенчатой сборки (multi-stage), позволяющей формировать более компактные образы Docker, используя единый Dockerfile. Многоступенчатая сборка основана на использовании промежуточных образов, применяемых для сборки компонентов итогового образа. Например, для создания образа с Java-приложением, можно создать промежуточный образ, включающий Apache Maven и прочие инструменты, необходимые для сборки, но не требуемые для выполнения приложения. При таком разделении при размере промежуточного образа в 620 Мб, размер итогового образа составит всего 145 Мб. Число стадий не лимитировано, например, для формирования единого образа программы AtSea используется объединение результатов двух промежуточных стадий - первой на базе node.js для сборки приложения ReactJS и второй на базе Maven для компиляции приложения Spring Boot, при этом финальный образ поставляется без Maven и node.js;
  • В команде "docker build" реализована возможность использовать значение аргументов, передаваемых через опцию "--build-arg" в поле FROM";
  • Метрики со статистикой о работе управляющего демона теперь могут быть не только запрошены через API, но и переданы плагинам и любым внешним сервисам через обработчик "/metrics";
  • Добавлена поддержка оформления в виде плагинов драйверов для накопления и обработки логов;
  • В разряд стабильных переведена команда "docker service logs", позволяющая упростить отладку сервисов за счёт избавления администратора от ручного сбора логов из отдельных хостов и контейнеров. При выполнении "docker service logs" логи из всех контейнеров, в которых выполняется указанный сервис, будут перенаправлены в текущую консоль;
  • Реализована возможность прикрепления сервисов к внутриузловым сетям (node-local), таким как сети с типами Host, Macvlan, IPVlan и Bridge, а также создаваемым через плагины локального действия. Например, для сети Macvlan можно создать специфичные сетевые конфигурации на рабочих узлах и затем создать общую сеть на управляющем узле, которая объединит эти конфигурации;
  • Расширены возможности режима Swarm, предоставляющего средства кластеризации для упакованных в контейнеры приложений. Swarm даёт возможность управлять кластером из нескольких хостов Docker по аналогии с работой с одним виртуальным хостом. В Docker 17.06 добавлен новый объект настройки для режима swarm, который позволяет безопасно передавать информацию о настройках. Во встроенной системе PKI (public key infrastructure) добавлена команда "docker swarm ca --rotate" для инициирования принудительной ротации ключей. В режиме swarm реализована возможность обработки событий ("docker events"), позволяющих средствам мониторинга в реальном режиме времени получить информацию о сервисах, узлах и сетях.


  1. Главная ссылка к новости (https://blog.docker.com/2017/0...)
  2. OpenNews: Docker представил Moby и LinuxKit для построения произвольных систем контейнерной изоляции
  3. OpenNews: 11% актуальных образов в репозиториях Docker содержат опасные уязвимости
  4. OpenNews: Выпуск cистемы управления контейнерной виртуализацией Docker 1.13
  5. OpenNews: Docker 1.11 переведён на containerd и runC
  6. OpenNews: SUSE и openSUSE представили Kubic, платформу для развёртывания контейнерной инфраструктуры
Лицензия: CC-BY
Тип: Программы
Ключевые слова: docker
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (-), 13:04, 30/06/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +2 +/
    Они вроде в этом релизе планировали добавить цепочку DOCKER_USER в iptables. Добавили, нет, кто-нибудь в курсе?
     
     
  • 2.6, Справедливость (?), 16:25, 30/06/2017 [^] [ответить]    [к модератору]
  • +/
    Да, наконец-то завезли. Какое-то время сидел на test только из-за этого. :)
     
  • 1.2, Аноним (2), 13:29, 30/06/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Когда уже решат проблему при релоаде правил iptables и применения docker-правил в него?
     
  • 1.3, QuAzI (ok), 13:30, 30/06/2017 [ответить] [показать ветку] [···]    [к модератору]
  • +3 +/
    Когда оно уже устаканится и там перестанут ломать всё по диагонали?
     
     
  • 2.7, leap42 (ok), 17:14, 30/06/2017 [^] [ответить]    [к модератору]
  • +9 +/
    когда модным будет что-нибудь другое
     
  • 2.10, Аноним (-), 21:22, 30/06/2017 [^] [ответить]     [к модератору]  
  • +1 +/
    Тогда, когда наконец введут адекватный способ узнать id контейнера внутри этого ... весь текст скрыт [показать]
     
  • 2.11, ананас (?), 23:27, 30/06/2017 [^] [ответить]    [к модератору]  
  • +/
    В этот раз поломали на отличьненько

    https://github.com/docker/machine/issues/4156
    https://github.com/docker/for-linux/issues/11#issuecomment-312143765
    https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/issues/2562

     
     
  • 3.15, чкчн (?), 01:33, 01/07/2017 [^] [ответить]    [к модератору]  
  • +3 +/
    чк, чн
     
  • 3.18, нах (?), 09:31, 01/07/2017 [^] [ответить]    [к модератору]  
  • +/
    > В этот раз поломали на отличьненько

    жадный неплательщик бабок правильным пацанам - должен страдать (если присмотреться к патчу - поломали только в CE)
    if strings.Contains(v1, ceEdition) && !strings.Contains(v2, ceEdition) {
    break things and report unrelated trash instead directly showing what's wrong
    }

    зато на go. Тестами, очевидно, CE не покрыт вообще никак. Пипл схавает и так.


     
  • 1.4, Аноним (-), 13:43, 30/06/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    >реализующего идею построения систем контейнерной изоляции в виде набора связываемых между собой универсальных компонентов.

    выглядит как превращение в глючного монстра

     
     
  • 2.5, Аноним (-), 15:15, 30/06/2017 [^] [ответить]    [к модератору]  
  • +/
    Выглядит как неспособность автора новости выразить свою мысль.
     
  • 2.8, Dmitry Shurupov (ok), 18:07, 30/06/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Чтобы не уходить в заблуждения про монстра… тут писал подробнее о том, что такое Moby и для чего его ввели, на русском языке: https://habrahabr.ru/company/flant/blog/329136/
     
  • 2.17, нах (?), 09:21, 01/07/2017 [^] [ответить]    [к модератору]  
  • –1 +/
    > выглядит как превращение в глючного монстра

    докер не может превратиться в то, чем изначально и был.

      

     
  • 1.9, Аноним (-), 21:19, 30/06/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Уже пару недель используем --build-arg , но жаль нет аналога, который будет раб... весь текст скрыт [показать]
     
  • 1.12, ALex_hha (ok), 01:06, 01/07/2017 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    не понял, о чем речь, эта опция есть и в 1 12 docker -v Docker version 1 12 6,... весь текст скрыт [показать]
     
     
  • 2.20, Аноним (-), 14:32, 01/07/2017 [^] [ответить]     [к модератору]  
  • +/
    Только что сам проверил, работает Неожиданно Недели полторы назад пересобиралс... весь текст скрыт [показать]
     
     
  • 3.22, ALex_hha (ok), 14:45, 01/07/2017 [^] [ответить]    [к модератору]  
  • +/
    > Только что сам проверил, работает. Неожиданно. Недели полторы назад пересобирался целиком
    > образ, что доставляло много неудобств. Не знаю, что поменялось, но это
    > сильно облегчает жизнь. Спасибо за тест.

    Я думаю вам понятно, что пересобираются все слои, которые идут за соотв   ARG параметром. Поэтому местоположение аргумента в докерфайле играет большое значение ;)

     
     
  • 4.23, Аноним (-), 15:43, 01/07/2017 [^] [ответить]     [к модератору]  
  • +/
    В нашем случае большой роли не играет, это просто переменные окружения http ,s _... весь текст скрыт [показать]
     
     
  • 5.24, Аноним (-), 19:09, 01/07/2017 [^] [ответить]     [к модератору]  
  • +/
    Поправка, предыдущий тест не достоверен, я забыл выключить прокси, поэтому ничег... весь текст скрыт [показать]
     
  • 1.13, ALex_hha (ok), 01:17, 01/07/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А почему в новости нет реально полезной фичи - Multi-stage builds? Которая позволяет в одном Dockerfile описать несколько контейнеров, а в финальном использовать только нужные папки/файлы из промежуточных

    FROM node:latest AS storefront
    WORKDIR /usr/src/atsea/app/react-app
    COPY react-app/package.json .
    RUN npm install
    COPY . /usr/src/atsea/app
    RUN npm run build

    FROM java:8-jdk-alpine
    WORKDIR /static
    COPY --from=storefront /usr/src/atsea/app/react-app/build/ .
    WORKDIR /app

    это очень круто и очень не хватало

     
     
  • 2.16, Dmitry Shurupov (ok), 05:09, 01/07/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    В новости ведь написано об этом первым пунктом "других изменений":
    > Поддержка многоступенчатой сборки (multi-stage), позволяющей формировать более компактные образы Docker, используя единый Dockerfile.
     
  • 2.19, Аноним (-), 13:46, 01/07/2017 [^] [ответить]    [к модератору]  
  • –2 +/
    Почему именно такой чепухи не хватало? Ви таки нишмагли написать несколько докерфайлов? На мой взгляд, например, эта фича — зарабатывание на плошку риса строками кода.
     
     
  • 3.21, ALex_hha (ok), 14:42, 01/07/2017 [^] [ответить]    [к модератору]  
  • +1 +/
    Вам платят за количество докерфайлов? :D И как вы будете передавать артефакты между контейнерами?
     
  • 1.14, ALex_hha (ok), 01:27, 01/07/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Ну и в сабже не точность

    Вместо
    "В команде "docker build" реализован флаг "--build-arg", позволяющий установить переменные для сборки, определённые в файле Dockerfile;"

    Должно быть

    "В команде "docker build" реализована возможность использовать значение аргументов, передаваемых через опцию "--build-arg" в поле FROM"

    Т.е. теперь можно так

    ARG ALPINE_VERSION
    FROM alpine:${ALPINE_VERSION}
    ....

    $ docker build --build-arg ALPINE_VERSION=3.1 .
    Sending build context to Docker daemon  9.728kB
    Step 1/3 : ARG ALPINE_VERSION
    --->
    Step 2/3 : FROM alpine:${ALPINE_VERSION}
    3.1: Pulling from library/alpine
    5cd2c87bea1e: Pull complete
    Digest: sha256:d9477888b78e8c6392e0be8b2e73f8c67e2894ff9d4b8e467d1488fcceec21c8
    Status: Downloaded newer image for alpine:3.1
    ---> 00772ebf9244
    Step 3/3 : RUN echo "And another one"
    ---> Running in 27484f729759
    And another one
    ---> 3eaaac555507
    Removing intermediate container 27484f729759
    Successfully built 3eaaac555507

     
  • 1.25, Аноним (-), 11:08, 02/07/2017 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    из присутствующих кто-либо делал инсталляции на 5000 контейнеров? какой режим сети выбирали?
     
     
  • 2.26, Аноним (-), 12:42, 02/07/2017 [^] [ответить]    [к модератору]  
  • +/
    Да, выбрали режим поддержки докера группой программистов из 10 человек.
     
     
  • 3.27, Аноним (-), 17:25, 02/07/2017 [^] [ответить]     [к модератору]  
  • +/
    ты про сам докер, а у меня вопрос в основном по сетевой составляющей из коробки... весь текст скрыт [показать]
     
     
  • 4.28, leap42 (ok), 13:21, 03/07/2017 [^] [ответить]    [к модератору]  
  • +/
    а зачем вам нат?
    возьмите openvswitch, запилите несколько бриджей, разрулите всё там
    ovs приятный
     

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


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