docker_network - Управление сетями Docker
Новая версия с 2.2.
Краткое описание
- Создание/удаление сетей Docker и подключение контейнеров к ним.
- Выполняет в основном те же функции, что и подкоманда “docker network” CLI.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- docker-py >= 1.7.0
- Обратите внимание, что модуль Python docker-py был заменён на docker (см. здесь для подробностей). Для Python 2.6,
docker-pyдолжен быть использован. В противном случае рекомендуется установить модуль Pythondocker. Обратите внимание, что оба модуля не должны быть установлены одновременно. Также обратите внимание, что при установке и удалении одного из модулей, другой может перестать функционировать, и потребуется его переустановка. - Сервер Docker >= 1.9.0
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_version | По умолчанию: "auto" | Версия API Docker, работающая на хосте Docker. По умолчанию использует последнюю версию API, поддерживаемую docker-py. Если значение не указано в задаче, используется значение переменной окружения DOCKER_API_VERSION . Если переменная окружения не задана, используется значение по умолчанию.Псевдонимы: docker_api_version |
| appends bool |
| По умолчанию список подключений является каноническим, что означает, что контейнеры, не входящие в список, удаляются из сети. Используйте appends для сохранения подключения существующих контейнеров.Псевдонимы: incremental |
| cacert_path | Использование сертификата CA при проверке сервера, указав путь к файлу сертификата CA. Если значение не указано в задаче и переменная окружения DOCKER_CERT_PATH установлена, используется файл ca.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH. Псевдонимы: tls_ca_cert | |
| cert_path | Путь к файлу TLS-сертификата клиента. Если значение не указано в задаче и переменная окружения DOCKER_CERT_PATH установлена, используется файл cert.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH. Псевдонимы: tls_client_cert | |
| connected | Список имён или идентификаторов контейнеров для подключения к сети. Псевдонимы: containers | |
| debug bool |
| Режим отладки |
| 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 | По умолчанию: "bridge" | Укажите тип сети. Docker предоставляет драйверы bridge и overlay, но также можно использовать драйверы сторонних разработчиков. |
| driver_options | Словарь параметров сети. Обратитесь к документации Docker для получения допустимых вариантов и значений. | |
| force bool |
| В состоянии absent принудительно отключает все контейнеры от сети перед удалением сети. В состоянии present отключает все контейнеры, удаляет сеть и создаёт её заново. Этот параметр необходим, если вы изменили параметры IPAM или драйвера и хотите обновить существующую сеть для использования новых параметров. |
| ipam_driver | Укажите драйвер IPAM. | |
| ipam_options | Словарь параметров IPAM. | |
| key_path | Путь к файлу TLS-ключа клиента. Если значение не указано в задаче и переменная окружения DOCKER_CERT_PATH установлена, используется файл key.pem из каталога, указанного в переменной окружения DOCKER_CERT_PATH. Псевдонимы: tls_client_key | |
| name обязательно | Имя сети, с которой необходимо работать. Псевдонимы: network_name | |
| ssl_version | Укажите действительную версию SSL. Значение по умолчанию определяется модулем ssl.py. Если значение не указано в задаче, используется значение переменной окружения DOCKER_SSL_VERSION. | |
| state |
|
отсутствует удаляет сеть. Если сеть подключена к контейнерам, она не может быть удалена. Используйте параметр force, чтобы отключить все контейнеры и удалить сеть.
наличие создаёт сеть, если она ещё не существует с указанными параметрами, и подключает список контейнеров, предоставленных через параметр connected. Контейнеры, не включённые в список, будут отключены. Пустой список не подключит контейнеров к сети. Используйте параметр appends для сохранения подключения существующих контейнеров. Используйте параметр force для принудительного пересоздания сети. |
| timeout | По умолчанию: 60 | Максимальное время в секундах ожидания ответа от API. Если значение не указано в задаче, используется значение переменной окружения DOCKER_TIMEOUT . Если переменная окружения не задана, используется значение по умолчанию. |
| tls bool |
| Обеспечьте безопасность подключения к API с помощью TLS, не проверяя подлинность хоста Docker. Если значение не указано в задаче, используется значение переменной окружения DOCKER_TLS . Если переменная окружения не задана, используется значение по умолчанию. |
| tls_hostname | По умолчанию: "localhost" | При проверке подлинности хоста Docker укажите ожидаемое имя сервера. Если значение не указано в задаче, используется значение переменной окружения DOCKER_TLS_HOSTNAME . Если переменная окружения не задана, используется значение по умолчанию. |
| tls_verify bool |
| Обеспечьте безопасность подключения к API с помощью TLS и проверьте подлинность хоста Docker. Если значение не указано в задаче, используется значение переменной окружения DOCKER_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://docker-py.readthedocs.org/en/stable/machine/ для получения дополнительной информации.
Примеры
- name: Create a network
docker_network:
name: network_one
- name: Remove all but selected list of containers
docker_network:
name: network_one
connected:
- container_a
- container_b
- container_c
- name: Remove a single container
docker_network:
name: network_one
connected: "{{ fulllist|difference(['container_a']) }}"
- name: Add a container to a network, leaving existing containers connected
docker_network:
name: network_one
connected:
- container_a
appends: yes
- name: Create a network with options
docker_network:
name: network_two
driver_options:
com.docker.network.bridge.name: net2
ipam_options:
subnet: '172.3.26.0/16'
gateway: 172.3.26.1
iprange: '192.168.1.0/24'
- name: Delete a network, disconnecting all containers
docker_network:
name: network_one
state: absent
force: yes
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое | Описание |
|---|---|---|
| facts dict | успех | Результаты проверки сети для затронутой сети. |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется как обратной совместимости.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Техническое обслуживание и поддержка модулей для получения дополнительной информации.
Список других модулей, также поддерживаемых сообществом Ansible, см. в этом разделе.
Автор
- Ben Keith (@keitwb)
- Chris Houseknecht (@chouseknecht)
Подсказка
Если вы обнаружите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/docker_network_module.html