Spec-Zone.ru › Ansible

Модуль community.docker.docker_host_info — получение сведений о хосте Docker и списков объектов служб

Примечание

Этот модуль входит в коллекцию community.docker (версия 5.2.0).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить коллекцию, используйте: ansible-galaxy collection install community.docker. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать модуль в плейбуке, укажите: community.docker.docker_host_info.

  • Краткое описание
  • Требования
  • Параметры
  • Атрибуты
  • Примечания
  • Примеры
  • Возвращаемые значения

Краткое описание

  • Получает сведения о хосте Docker.
  • По сути, возвращает вывод команды docker system info.
  • Модуль также позволяет получить список имён объектов контейнеров, образов, сетей и томов. Кроме того, он позволяет запрашивать сведения об использовании диска.
  • Вывод зависит от версии API демона Docker.
  • Если связаться с демоном Docker не удаётся или он не соответствует требованиям к версии API, выполнение модуля завершится ошибкой.

Требования

На хосте, где выполняется этот модуль, необходимы следующие компоненты.

  • Docker API >= 1.25
  • paramiko (при использовании SSH с use_ssh_client=false)
  • pyOpenSSL (при использовании TLS)
  • pywin32 (при использовании именованных каналов в Windows 32)
  • requests

Параметры

Параметр

Описание

api_version

псевдонимы: docker_api_version

string

Версия Docker API, используемая на хосте Docker.

По умолчанию используется последняя версия API, поддерживаемая этой коллекцией и демоном Docker.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_API_VERSION. Если переменная окружения не задана, будет использовано значение по умолчанию.

По умолчанию: "auto"

ca_path

псевдонимы: ca_cert, tls_ca_cert, cacert_path

path

Для проверки сервера используйте сертификат центра сертификации, указав путь к файлу сертификата.

Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, будет использован файл ca.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH.

Ранее этот параметр назывался ca_cert; в community.docker 3.6.0 его переименовали в ca_path. Старое имя добавлено как псевдоним и по-прежнему доступно.

client_cert

псевдонимы: tls_client_cert, cert_path

path

Путь к файлу TLS-сертификата клиента.

Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, будет использован файл cert.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH.

client_key

псевдонимы: tls_client_key, key_path

path

Путь к файлу TLS-ключа клиента.

Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, будет использован файл key.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH.

containers

boolean

Нужно ли выводить список контейнеров.

Возможные значения:

  • false ← (по умолчанию)
  • true

containers_all

boolean

добавлено в community.docker 3.4.0

По умолчанию возвращаются только запущенные контейнеры.

Соответствует параметру --all команды docker container list.

Возможные значения:

  • false ← (по умолчанию)
  • true

containers_filters

dictionary

Словарь значений фильтров для выбора контейнеров, которые нужно вывести.

Например, until: 24h.

label — особый фильтр, значением которого может быть строка <key>, выбирающая контейнеры с указанной меткой, строка <key>=<value>, выбирающая контейнеры с меткой, имеющей определённое значение, или список строк <key>/<key>=<value.

Дополнительные сведения о возможных фильтрах см. в документации Docker.

debug

boolean

Режим отладки

Возможные значения:

  • false ← (по умолчанию)
  • true

disk_usage

boolean

Сводные сведения об использовании дискового пространства всеми слоями Docker.

Вывод содержит суммарные данные об образах, томах, контейнерах и кэше сборки.

Возможные значения:

  • false ← (по умолчанию)
  • true

docker_host

псевдонимы: docker_url

string

URL или путь к сокету Unix для подключения к Docker API. Для подключения к удалённому хосту укажите строку TCP-подключения. Например, tcp://192.0.2.23:2376. Если подключение зашифровано с помощью TLS, модуль автоматически заменит tcp в URL подключения на https.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_HOST. Если переменная окружения не задана, будет использовано значение по умолчанию.

По умолчанию: "unix:///var/run/docker.sock"

images

boolean

Нужно ли выводить список образов.

Возможные значения:

  • false ← (по умолчанию)
  • true

images_filters

dictionary

Словарь значений фильтров для выбора образов, которые нужно вывести.

Например, dangling: true.

label — особый фильтр, значением которого может быть строка <key>, выбирающая образы с указанной меткой, строка <key>=<value>, выбирающая образы с меткой, имеющей определённое значение, или список строк <key>/<key>=<value.

Дополнительные сведения о возможных фильтрах см. в документации Docker.

networks

boolean

Нужно ли выводить список сетей.

Возможные значения:

  • false ← (по умолчанию)
  • true

networks_filters

dictionary

Словарь значений фильтров для выбора сетей, которые нужно вывести.

label — особый фильтр, значением которого может быть строка <key>, выбирающая сети с указанной меткой, строка <key>=<value>, выбирающая сети с меткой, имеющей определённое значение, или список строк <key>/<key>=<value.

Дополнительные сведения о возможных фильтрах см. в документации Docker.

timeout

integer

Максимальное время ожидания ответа от API в секундах.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TIMEOUT. Если переменная окружения не задана, будет использовано значение по умолчанию.

По умолчанию: 60

tls

boolean

Защитите подключение к API с помощью TLS без проверки подлинности сервера хоста Docker. Обратите внимание: если для validate_certs также задано значение true, этот параметр будет иметь приоритет.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TLS. Если переменная окружения не задана, будет использовано значение по умолчанию.

Возможные значения:

  • false ← (по умолчанию)
  • true

tls_hostname

string

При проверке подлинности сервера хоста Docker укажите ожидаемое имя сервера.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TLS_HOSTNAME. Если переменная окружения не задана, будет использовано значение по умолчанию.

Обратите внимание, что в более ранних версиях для этого параметра использовалось значение по умолчанию localhost. Оно было удалено в community.docker 3.0.0.

use_ssh_client

boolean

добавлено в community.docker 1.5.0

Для подключений SSH используйте утилиту командной строки ssh вместо paramiko.

Возможные значения:

  • false ← (по умолчанию)
  • true

validate_certs

псевдонимы: tls_verify

boolean

Защитите подключение к API с помощью TLS и проверяйте подлинность сервера хоста Docker.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TLS_VERIFY. Если переменная окружения не задана, будет использовано значение по умолчанию.

Возможные значения:

  • false ← (по умолчанию)
  • true

verbose_output

boolean

Если для этого параметра задано значение true, а для networks, volumes, images, containers или disk_usage задано значение true, вывод будет содержать подробные сведения об объектах, соответствующие полному выводу метода API. Подробности см. в документации по используемой версии Docker API: https://docs.docker.com/engine/api/.

Подробный вывод этого модуля содержит лишь подмножество сведений, возвращаемых модулем для каждого типа объектов.

Возможные значения:

  • false ← (по умолчанию)
  • true

volumes

boolean

Нужно ли выводить список томов.

Возможные значения:

  • false ← (по умолчанию)
  • true

volumes_filters

dictionary

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

label — особый фильтр, значением которого может быть строка <key>, выбирающая тома с указанной меткой, строка <key>=<value>, выбирающая тома с меткой, имеющей определённое значение, или список строк <key>/<key>=<value.

Дополнительные сведения о возможных фильтрах см. в документации Docker.

Атрибуты

Атрибут

Поддержка

Описание

action_group

Группы действий: community.docker.docker, docker

Используйте group/docker или group/community.docker.docker в module_defaults, чтобы задать значения по умолчанию для этого модуля.

check_mode

Поддержка: полная

Это действие не изменяет состояние.

Может выполняться в режиме check_mode и возвращать прогноз изменения состояния без изменения целевого объекта.

diff_mode

Поддержка: Н/Д

Это действие не изменяет состояние.

В режиме различий возвращает сведения об изменениях (или о том, что, возможно, необходимо изменить в check_mode).

idempotent

Поддержка: полная

Это действие не изменяет состояние.

При повторном запуске с теми же аргументами вне режима проверки модуль сообщает об отсутствии изменений.

Предполагается, что система, которой управляет модуль или данные которой он запрашивает, не изменилась существенным образом.

Примечания

Примечание

  • Подключайтесь к демону Docker, указывая параметры в каждой задаче или задавая переменные окружения. Можно задать DOCKER_HOST, DOCKER_TLS_HOSTNAME, DOCKER_API_VERSION, DOCKER_CERT_PATH, DOCKER_TLS, DOCKER_TLS_VERIFY и DOCKER_TIMEOUT. Если вы используете docker machine, запустите поставляемый с продуктом сценарий, который настраивает окружение. Он задаст эти переменные за вас. Дополнительные сведения см. на странице https://docs.docker.com/machine/reference/env/.
  • Этот модуль не использует Docker SDK for Python для взаимодействия с демоном Docker. Вместо этого он использует код, производный от Docker SDK или Python и включённый в эту коллекцию.

Примеры

---
- name: Get info on docker host
  community.docker.docker_host_info:
  register: result

- name: Get info on docker host and list images
  community.docker.docker_host_info:
    images: true
  register: result

- name: Get info on docker host and list images matching the filter
  community.docker.docker_host_info:
    images: true
    images_filters:
      label: "mylabel"
  register: result

- name: Get info on docker host and verbose list images
  community.docker.docker_host_info:
    images: true
    verbose_output: true
  register: result

- name: Get info on docker host and used disk space
  community.docker.docker_host_info:
    disk_usage: true
  register: result

- name: Get info on docker host and list containers matching the filter
  community.docker.docker_host_info:
    containers: true
    containers_filters:
      label:
        - key1=value1
        - key2=value2
  register: result

- name: Show host information
  ansible.builtin.debug:
    var: result.host_info

Возвращаемые значения

Общие возвращаемые значения описаны здесь, ниже перечислены поля, уникальные для этого модуля:

Ключ

Описание

can_talk_to_docker

boolean

Будет true, если модуль может взаимодействовать с демоном Docker.

Возвращается: как при успешном выполнении, так и при ошибке

containers

list / elements=dictionary

Список объектов dict с основной информацией о каждом контейнере. Ключи соответствуют выводу docker container ls, если не указано verbose_output=true. См. описание verbose_output.

Возвращается: если containers=true

disk_usage

dictionary

Сводная информация об использовании дискового пространства образами, контейнерами и томами на хосте Docker, если не указано verbose_output=true. См. описание verbose_output.

Возвращается: если disk_usage=true

host_info

dictionary

Факты, отражающие основное состояние хоста Docker. Соответствует выводу docker system info.

Возвращается: всегда

images

list / elements=dictionary

Список объектов dict с основной информацией о каждом образе. Ключи соответствуют выводу docker image ls, если не указано verbose_output=true. См. описание verbose_output.

Возвращается: если images=true

networks

list / elements=dictionary

Список объектов dict с основной информацией о каждой сети. Ключи соответствуют выводу docker network ls, если не указано verbose_output=true. См. описание verbose_output.

Возвращается: если networks=true

volumes

list / elements=dictionary

Список объектов dict с основной информацией о каждом томе. Ключи соответствуют выводу docker volume ls, если не указано verbose_output=true. См. описание verbose_output.

Возвращается: если volumes=true

Авторы

  • Piotr Wojciechowski (@WojciechowskiPiotr)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Запросить помощь (Docker)
  • Запросить помощь (Docker Compose)
  • Запросить помощь (Docker Swarm)
  • Сообщить об ошибке
  • Предложить функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/docker/docker_host_info_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API