community.general.docker_volume – Управление Docker томами
Примечание
Этот плагин входит в коллекцию community.general (версия 1.3.2).
Для его установки используйте: ansible-galaxy collection install community.general.
Для использования в книге задач укажите: community.general.docker_volume.
Описание
- Создание/удаление Docker томов.
- Выполняет в основном те же функции, что и подкоманда «docker volume» CLI.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- Docker SDK для Python: Обратите внимание, что модуль Python docker-py был заменён на docker (подробности см. в здесь). Для Python 2.6 необходимо использовать
docker-py. В противном случае рекомендуется установить модуль Pythondocker. Обратите внимание, что оба модуля не должны устанавливаться одновременно. Также обратите внимание, что при установке обоих модулей и удалении одного из них другой может перестать работать, и потребуется его переустановка. - Docker SDK для Python >= 1.10.0 (для Python 2.6 используйте docker-py)
- Сервер docker >= 1.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_version строка | Значение по умолчанию: "auto" | Версия API Docker, работающего на Docker хосте. По умолчанию используется последняя версия API, поддерживаемая Docker SDK для Python и демоном docker. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_API_VERSION. Если переменная окружения не задана, будет использовано значение по умолчанию.псевдонимы: docker_api_version |
| ca_cert путь | Используйте сертификат CA при проверке подлинности сервера, указав путь к файлу сертификата CA. Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, будет использован файл ca.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH. псевдонимы: tls_ca_cert, cacert_path | |
| client_cert путь | Путь к файлу TLS-сертификата клиента. Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, будет использован файл cert.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH. псевдонимы: tls_client_cert, cert_path | |
| client_key путь | Путь к файлу TLS-ключа клиента. Если значение не указано в задаче, а переменная окружения DOCKER_CERT_PATH задана, будет использован файл key.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH. псевдонимы: tls_client_key, key_path | |
| debug булево |
| Режим отладки |
| docker_host строка | Значение по умолчанию: "unix://var/run/docker.sock" | URL или путь к Unix-сокету, используемые для подключения к API Docker. Для подключения к удалённому хосту, укажите строку TCP подключения. Например, tcp://192.0.2.23:2376. Если для шифрования соединения используется TLS, модуль автоматически заменит tcp в URL подключения на https. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_HOST. Если переменная окружения не задана, будет использовано значение по умолчанию.псевдонимы: docker_url |
| driver строка | Значение по умолчанию: "local" | Укажите тип тома. Docker предоставляет драйвер local, но также можно использовать драйверы сторонних разработчиков. |
| driver_options словарь | Словарь настроек тома. Обратитесь к документации docker для допустимых вариантов и значений: https://docs.docker.com/engine/reference/commandline/volume_create/#driver-specific-options
| |
| force булево |
| Состояние present приводит к удалению и пересозданию тома, если том уже существует, и драйвер, параметры драйвера или метки отличаются. Это приведёт к потере данных в существующем томе.Устаревшее. Будет удалено в community.general 2.0.0. Установите recreate на options-changed вместо этого для того же поведения, что и установка force на yes. |
| labels словарь | Словарь меток ключ/значение для установки для тома | |
| recreate строка |
| Управляет тем, когда том будет пересоздан, когда state равен present. Обратите внимание, что пересоздание существующего тома приведёт к потере **всех данных в существующем томе!** Том будет удалён, и будет создан новый том с тем же именем.Значение always принудительно пересоздаёт том.Значение never гарантирует, что том не будет пересоздан.Значение options-changed гарантирует, что том будет пересоздан, если том уже существует, и драйвер, параметры драйвера или метки отличаются. |
| ssl_version строка | Укажите допустимое числовое значение версии SSL. Значение по умолчанию определяется модулем ssl.py. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_SSL_VERSION. | |
| state строка |
| absent удаляет том.present создаёт том, если он ещё не существует. |
| timeout целое число | Значение по умолчанию: 60 | Максимальное время ожидания ответа от API в секундах. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TIMEOUT. Если переменная окружения не задана, будет использовано значение по умолчанию. |
| tls булево |
| Защитить соединение с API с помощью TLS без проверки подлинности сервера Docker. Обратите внимание, что если validate_certs также установлен в yes, приоритет будет отдан ему.Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TLS. Если переменная окружения не задана, будет использовано значение по умолчанию. |
| tls_hostname строка | Значение по умолчанию: "localhost" | При проверке подлинности сервера Docker укажите ожидаемое имя сервера. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TLS_HOSTNAME. Если переменная окружения не задана, будет использовано значение по умолчанию. |
| validate_certs булево |
| Защитить соединение с API с помощью TLS и проверить подлинность сервера Docker. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_TLS_VERIFY. Если переменная окружения не задана, будет использовано значение по умолчанию.псевдонимы: tls_verify |
| volume_name строка / обязательно | Имя тома, над которым нужно выполнить операцию. псевдонимы: name |
Примечания
Примечание
- Подключитесь к демону 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в противном случае.
Примеры
- name: Create a volume
community.general.docker_volume:
name: volume_one
- name: Remove a volume
community.general.docker_volume:
name: volume_one
state: absent
- name: Create a volume with options
community.general.docker_volume:
name: volume_two
driver_options:
type: btrfs
device: /dev/sda2
Значения возврата
Общие значения возврата описаны здесь, следующие — поля, уникальные для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| volume словарь | успех | Результаты проверки тома для затронутого тома. Обратите внимание, что факты являются частью зарегистрированных переменных с Ansible 2.8. По соображениям совместимости факты также доступны напрямую как docker_volume. Обратите внимание, что возвращаемый факт будет удалён в community.general 2.0.0. |
Авторы
- Alex Grönholm (@agronholm)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/docker_volume_module.html