Spec-Zone.ru › Ansible 2.11

community.docker.docker_api – Выполнение задач в контейнерах Docker

Примечание

Этот плагин является частью коллекции community.docker (версия 1.2.2).

Для его установки используйте: ansible-galaxy collection install community.docker.

Для использования в книге задач укажите: community.docker.docker_api.

Новое в версии 1.1.0: коллекции community.docker

  • Обзор
  • Требования
  • Параметры
  • Примечания

Обзор

  • Выполнение команд или копирование/получение файлов в существующий контейнер Docker.
  • Использует Docker SDK для Python для прямого взаимодействия с демоном Docker вместо использования Docker CLI. Используйте плагин подключения community.docker.docker, если вы хотите использовать Docker CLI.

Требования

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

  • Docker SDK для Python: Обратите внимание, что модуль Python docker-py устарел и заменён на docker (подробнее см. здесь). Для Python 2.6 необходимо использовать docker-py. В противном случае рекомендуется установить модуль Python docker. Обратите внимание, что оба модуля не должны быть установлены одновременно. Также обратите внимание, что при установке обоих модулей и удалении одного из них, другой может перестать работать, и потребуется его повторная установка.

Параметры

Параметр Варианты/Значения по умолчанию Настройка Комментарии
api_version
строка
Значение по умолчанию:
"auto"
var: ansible_docker_api_version
Версия API Docker, работающая на хосте Docker.
По умолчанию используется последняя версия API, поддерживаемая Docker SDK для Python и демоном Docker.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_API_VERSION. Если переменная окружения не задана, используется значение по умолчанию.

Псевдонимы: docker_api_version
ca_cert
путь
var: ansible_docker_ca_cert
Используйте сертификат CA при проверке сервера, указав путь к файлу сертификата CA.
Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, используется файл ca.pem из директории, указанной в переменной окружения DOCKER_CERT_PATH.

Псевдонимы: tls_ca_cert, cacert_path
client_cert
путь
var: ansible_docker_client_cert
Путь к файлу TLS-сертификата клиента.
Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, используется файл cert.pem из директории, указанной в переменной окружения DOCKER_CERT_PATH.

Псевдонимы: tls_client_cert, cert_path
client_key
путь
var: ansible_docker_client_key
Путь к файлу TLS-ключа клиента.
Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, используется файл key.pem из директории, указанной в переменной окружения DOCKER_CERT_PATH.

Псевдонимы: tls_client_key, key_path
debug
логический
    Варианты:
  • нет ←
  • да
Режим отладки
docker_host
строка
Значение по умолчанию:
"unix://var/run/docker.sock"
var: ansible_docker_docker_host
URL или путь к Unix-сокету для подключения к API Docker. Для подключения к удалённому узлу укажите строку TCP-подключения. Например, tcp://192.0.2.23:2376. Если для шифрования подключения используется TLS, модуль автоматически заменит tcp в URL подключения на https.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_HOST. Если переменная окружения не задана, используется значение по умолчанию.

Псевдонимы: docker_url
remote_addr
строка
Значение по умолчанию:
"inventory_hostname"
var: ansible_host
var: ansible_docker_host
Имя контейнера, к которому требуется доступ.
remote_user
строка
var: ansible_user
var: ansible_docker_user
Пользователь, от имени которого будет выполняться задача внутри контейнера.
ssl_version
строка
var: ansible_docker_ssl_version
Укажите версию SSL. Значение по умолчанию определяется модулем ssl.py.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_SSL_VERSION.
timeout
целое число
Значение по умолчанию:
60
var: ansible_docker_timeout
Максимальное время ожидания ответа от API в секундах.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_TIMEOUT. Если переменная окружения не задана, используется значение по умолчанию.
tls
логический
    Варианты:
  • нет ←
  • да
var: ansible_docker_tls
Защитите подключение к API с помощью TLS, не проверяя подлинность сервера Docker.
Обратите внимание, что если также установлено значение validate_certs = yes, оно будет иметь приоритет.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_TLS. Если переменная окружения не задана, используется значение по умолчанию.
tls_hostname
строка
Значение по умолчанию:
"localhost"
var: ansible_docker_tls_hostname
При проверке подлинности сервера Docker укажите ожидаемое имя сервера.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_TLS_HOSTNAME. Если переменная окружения не задана, используется значение по умолчанию.
validate_certs
логический
    Варианты:
  • нет ←
  • да
var: ansible_docker_validate_certs
Защитите подключение к API с помощью TLS и проверьте подлинность сервера Docker.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_TLS_VERIFY. Если переменная окружения не задана, используется значение по умолчанию.

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

Примечания

Примечание

  • Подключитесь к демону Docker, указав параметры в каждой задаче или определив переменные окружения. Вы можете определить DOCKER_HOST, DOCKER_TLS_HOSTNAME, DOCKER_API_VERSION, DOCKER_CERT_PATH, DOCKER_SSL_VERSION, DOCKER_TLS, DOCKER_TLS_VERIFY и DOCKER_TIMEOUT. Если вы используете docker machine, запустите скрипт, поставляемый с продуктом, который настраивает среду. Он установит эти переменные для вас. Подробнее см. https://docs.docker.com/machine/reference/env/.
  • При подключении к демону Docker с помощью TLS, возможно, потребуется установить дополнительные пакеты Python. Для Docker SDK для Python, версии 2.4 или выше, это можно сделать, установив docker[tls] с помощью ansible.builtin.pip.
  • Обратите внимание, что Docker SDK для Python позволяет указать путь к конфигурации Docker только для очень немногих функций. В общем случае он будет использовать $HOME/.docker/config.json, если переменная окружения DOCKER_CONFIG не указана, и использовать $DOCKER_CONFIG/config.json в противном случае.
  • Этот модуль использует Docker SDK для Python для взаимодействия с демоном Docker.

Авторы

  • Felix Fontein (@felixfontein)

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

Spec-Zone.ru

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