Docker совет №9: Добавляйте метаданные в ваши docker-образы
Dec 14, 2017 11:40 · 180 words · 1 minute read
Метки (labels) позволяют творить довольно интересные вещи с docker-образами. В статье приведено несколько основных вариантов использования — давайте разберемся!
Метки образов позволяют добавлять текстовые данные (метаданные) к docker-образам. Позже, на основе добавленных меток можно фильтровать свои docker-образы или использовать эти метки в своих сценариях/инструментах.
Вот несколько примеров использования меток в docker-образах:
- хранение дополнительной информации о сборке (например, теги
git
и даты выпуска); - контактные данные авторов/сопровождающих данный docker-образ;
- информацию о лицензии (MIT, GPLv2 и т.д.);
- ваши специфические критерии для быстрого поиска.
Один из вариантов добавления метаданных в docker-образы — дописать инструкцию LABEL
в Dockerfile. Формат простой — LABEL <ключ> = <значение>
, пар ключ=значение
может быть более одной. Например:
...
LABEL version="1.0" maintainer="Evgen Lebed <ealebed@gmail.com>"
...
Второй способ установки метаданных — добавлять их при сборке docker-образов с помощью флага --label
. Этот вариант особенно хорош, если нужно вставить метки, которые определяются результатом выполнения других команд. Например:
docker build . --label "version=1.0" --label "maintainer=Evgen Lebed"
Теперь при запуске команды docker inspect
(применимо к такому docker-образу) можно будет увидеть эти метаданные. Уверен, что вы сможете придумать, как использовать метки в сценариях развертывания или инструментах оркестрации.