Spec-Zone.ru › Ansible 2.10

community.docker.docker_swarm_service – docker swarm service

Примечание

Этот плагин входит в коллекцию community.docker (версия 1.1.0).

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

Для использования в playbook, укажите: community.docker.docker_swarm_service

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

Обзор

  • Управляет docker службами через узел менеджера swarm.

Требования

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

  • Docker API >= 1.24
  • Docker SDK для Python: Обратите внимание, что модуль Python docker-py был заменён на docker (см. здесь для деталей). Этот модуль не работает с docker-py.
  • Docker SDK для Python >= 2.0.2
  • Python >= 2.7

Параметры

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

Псевдонимы: docker_api_version
args
список / элементы=строка
Список аргументов, которые будут переданы контейнеру.
Соответствует параметру ARG в docker service create.
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
command
необработанный
Команда, которая выполняется при запуске контейнера.
Команда может быть строкой, списком или списком строк.
Соответствует параметру COMMAND в docker service create.
configs
список / элементы=словарь
Список словарей, описывающих конфигурации сервиса.
Соответствует опции --config в docker service create.
Требуется версия API >= 1.30.
config_id
строка
Идентификатор конфигурации.
config_name
строка / обязательно
Имя конфигурации, определённое при её создании.
filename
строка
Имя файла, содержащего конфигурацию. По умолчанию совпадает с config_name, если не указано иное.
gid
строка
GID группы файла конфигурации.
mode
целое число
Режим доступа к файлу внутри контейнера. Должно быть восьмеричным числом (например, 0644 или 0444).
uid
строка
UID владельца файла конфигурации.
container_labels
словарь
Словарь пар ключ-значение.
Соответствует опции --container-label в docker service create.
debug
булево
    Варианты:
  • нет ←
  • да
Режим отладки
dns
список / элементы=строка
Список пользовательских DNS-серверов.
Соответствует опции --dns в docker service create.
Требуется версия API >= 1.25.
dns_options
список / элементы=строка
Список пользовательских опций DNS.
Соответствует опции --dns-option в docker service create.
Требуется версия API >= 1.25.
dns_search
список / элементы=строка
Список пользовательских доменов поиска DNS.
Соответствует опции --dns-search в docker service create.
Требуется версия API >= 1.25.
docker_host
строка
По умолчанию:
"unix://var/run/docker.sock"
URL или путь к Unix-сокету для подключения к Docker API. Для подключения к удалённому хосту, укажите строку TCP-соединения. Например, tcp://192.0.2.23:2376. Если для шифрования соединения используется TLS, модуль автоматически заменит tcp в URL соединения на https.
Если значение не указано в задаче, вместо него будет использовано значение переменной окружения DOCKER_HOST.
Если переменная окружения не установлена, будет использовано значение по умолчанию.

Псевдонимы: docker_url
endpoint_mode
строка
    Варианты:
  • vip
  • dnsrr
Режим конечной точки сервиса.
Соответствует опции --endpoint-mode в docker service create.
Требуется версия API >= 1.25.
env
необработанный
Список или словарь переменных окружения сервиса.
Если передан список, каждый элемент должен быть в формате KEY=VALUE.
Если передан словарь, значения, которые могут быть распарсены как числа, булевы значения или другие типы YAML-парсером, должны быть заключены в кавычки (например, "true"), чтобы избежать потери данных.
Соответствует опции --env в docker service create.
env_files
список / элементы=путь
Список путей к файлам, присутствующим на целевом объекте, содержащим переменные окружения FOO=BAR.
Порядок в списке важен для определения значения, присваиваемого переменной, которая встречается более одного раза.
Если переменная также присутствует в env, то значение из env переопределит.
force_update
булево
    Варианты:
  • нет ←
  • да
Принудительное обновление, даже если изменений не требуется.
Соответствует опции --force в docker service update.
Требуется версия API >= 1.25.
groups
список / элементы=строка
Список дополнительных имён и/или идентификаторов групп, в которых будет выполняться процесс контейнера.
Соответствует опции --group в docker service update.
Требуется версия API >= 1.25.
healthcheck
словарь
Настройка проверки для определения, являются ли контейнеры для данного сервиса «здоровыми». См. документацию по инструкции HEALTHCHECK Dockerfile для получения подробной информации о работе проверок работоспособности.
interval, timeout и start_period задаются как временные интервалы. Они принимают время как строку в формате, похожем на: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Требуется версия API >= 1.25.
interval
строка
Время между запусками проверки.
retries
целое число
Необходимое количество последовательных неудач для отметки как «неработоспособный». Принимает целое значение.
start_period
строка
Период запуска контейнера для инициализации перед началом отсчёта попыток проверки работоспособности.
test
необработанный
Команда для проверки работоспособности.
Должна быть строкой или списком. Если это список, первый элемент должен быть одним из NONE, CMD или CMD-SHELL.
timeout
строка
Максимальное время выполнения одной проверки.
hostname
строка
Имя хоста контейнера.
Соответствует опции --hostname в docker service create.
Требуется версия API >= 1.25.
hosts
словарь
Словарь соответствий имён хостов IP-адресам, где имя хоста является ключом в словаре. Каждое имя хоста будет добавлено в файл /etc/hosts контейнера.
Соответствует опции --host в docker service create.
Требуется версия API >= 1.25.
image
строка
Путь и тэг изображения сервиса.
Соответствует параметру IMAGE в docker service create.
init
булево
    Варианты:
  • нет
  • да
Использовать init внутри каждого контейнера сервиса для перенаправления сигналов и сбора процессов.
Соответствует опции --init в docker service create.
Требуется версия API >= 1.37.
Метки
словарь
Словарь пар ключ-значение.
Соответствует параметру --label опции docker service create.
Ограничения
словарь
Настраивает ограничения ресурсов сервиса.
cpus
float
Ограничение ЦП сервиса. 0 означает отсутствие ограничения.
Соответствует параметру --limit-cpu опции docker service create.
memory
строка
Ограничение памяти сервиса в формате <number>[<unit>]. Число — положительное целое. Единица измерения может быть B (байт), K (кибибайт, 1024 Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).
0 означает отсутствие ограничения.
Если единица измерения не указана, по умолчанию используется байт.
Соответствует параметру --limit-memory опции docker service create.
logging
словарь
Настройка ведения журнала для сервиса.
driver
строка
Настройка драйвера ведения журнала для сервиса.
Соответствует параметру --log-driver опции docker service create.
options
словарь
Параметры драйвера ведения журнала сервиса.
Соответствует параметру --log-opt опции docker service create.
mode
строка
    Варианты:
  • replicated ←
  • global
Режим репликации сервиса.
Сервис будет удален и пересоздан при изменении.
Соответствует параметру --mode опции docker service create.
mounts
список / элементы=словарь
Список словарей, описывающих подключения сервиса.
Соответствует параметру --mount опции docker service create.
driver_config
словарь
Настройка драйвера тома.
Может использоваться только при type volume.
name
строка
Имя плагина драйвера тома, который необходимо использовать для тома.
options
словарь
Параметры в виде пар ключ-значение, которые необходимо передать драйверу для этого тома.
labels
словарь
Метки тома, которые необходимо применить.
no_copy
логическое
    Варианты:
  • нет
  • да
Отключить копирование данных из контейнера при создании тома.
Может использоваться только при type volume.
propagation
строка
    Варианты:
  • shared
  • slave
  • private
  • rshared
  • rslave
  • rprivate
Режим распространения.
Может использоваться только при type bind.
readonly
логическое
    Варианты:
  • нет
  • да
Подключение должно быть только для чтения.
source
строка
Источник подключения (например, имя тома или путь к хосту).
Должно быть указано, если type не tmpfs.
target
строка / обязательно
Путь в контейнере.
tmpfs_mode
целое
Режим файла tmpfs в восьмеричной форме.
Может использоваться только при type tmpfs.
tmpfs_size
строка
Размер подключения tmpfs в формате <number>[<unit>]. Число — положительное целое. Единица измерения может быть B (байт), K (кибибайт, 1024 Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).
Может использоваться только при type tmpfs.
type
строка
    Варианты:
  • bind ←
  • volume
  • tmpfs
  • npipe
Тип подключения.
Обратите внимание, что npipe поддерживается только Docker для Windows. Также обратите внимание, что npipe был добавлен в Ansible 2.9.
name
строка / обязательно
Имя сервиса.
Соответствует параметру --name опции docker service create.
networks
список / элементы=сырой
Список имен сетей сервиса или словарей.
При передаче словарей допустимыми подпараметрами являются name (обязательно), aliases и options.
До версии API 1.29 обновление и удаление сетей не поддерживаются. Если изменения будут внесены, сервис будет удалён и пересоздан.
Соответствует параметру --network опции docker service create.
placement
словарь
Настраивает предпочтения и ограничения размещения сервиса.
constraints
список / элементы=строка
Список ограничений сервиса.
Соответствует параметру --constraint опции docker service create.
preferences
список / элементы=словарь
Список предпочтений размещения в виде пар ключ-значение.
Соответствует параметру --placement-pref опции docker service create.
Требуется версия API >= 1.27.
publish
список / элементы=словарь
Список словарей, описывающих опубликованные порты сервиса.
Соответствует параметру --publish опции docker service create.
Требуется версия API >= 1.25.
mode
строка
    Варианты:
  • ingress
  • host
Режим публикации.
Требуется версия API >= 1.32.
protocol
строка
    Варианты:
  • tcp ←
  • udp
Используемый протокол.
published_port
целое / обязательно
Порт, доступный извне.
target_port
целое / обязательно
Порт внутри контейнера, который необходимо экспонировать.
read_only
логическое
    Варианты:
  • нет
  • да
Подключить корневую файловую систему контейнера в режиме только для чтения.
Соответствует параметру --read-only опции docker service create.
replicas
целое
По умолчанию:
-1
Количество создаваемых контейнеров в сервисе. Допустимо только если mode replicated.
Если установлено -1, и сервис отсутствует, реплики сервиса будут установлены в 1.
Если установлено -1, и сервис присутствует, реплики сервиса не изменятся.
Соответствует параметру --replicas опции docker service create.
reservations
словарь
Настраивает резервации ресурсов сервиса.
cpus
float
Резервация ЦП сервиса. 0 означает отсутствие резервации.
Соответствует параметру --reserve-cpu опции docker service create.
memory
строка
Резервация памяти сервиса в формате <number>[<unit>]. Число — положительное целое. Единица измерения может быть B (байт), K (кибибайт, 1024 Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).
0 означает отсутствие резервации.
Если единица измерения не указана, по умолчанию используется байт.
Соответствует параметру --reserve-memory опции docker service create.
resolve_image
логическое
    Варианты:
  • нет ←
  • да
Если текущий дайджест изображения должен быть разрешен из реестра и обновлён, если он изменён.
Требуется версия API >= 1.30.
restart_config
словарь
Настраивает, как и нужно ли перезапускать контейнеры при их выходе.
condition
строка
    Варианты:
  • none
  • on-failure
  • any
Условие перезапуска сервиса.
Соответствует параметру --restart-condition в docker service create.
delay
строка
Задержка между перезапусками.
Принимает строку в формате: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Соответствует параметру --restart-delay в docker service create.
max_attempts
целое число
Максимальное количество перезапусков сервиса.
Соответствует параметру --restart-condition в docker service create.
window
строка
Окно оценки политики перезапуска.
Принимает строку в формате: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Соответствует параметру --restart-window в docker service create.
rollback_config
словарь
Настраивает, как сервис должен откатываться в случае неудачного обновления.
delay
строка
Задержка между отката задач.
Принимает строку в формате: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Соответствует параметру --rollback-delay в docker service create.
Требуется версия API ≥ 1.28.
failure_action
строка
    Варианты:
  • continue
  • pause
Действие в случае неудачи отката.
Соответствует параметру --rollback-failure-action в docker service create.
Требуется версия API ≥ 1.28.
max_failure_ratio
вещественное число
Доля задач, которые могут завершиться ошибкой во время отката.
Соответствует параметру --rollback-max-failure-ratio в docker service create.
Требуется версия API ≥ 1.28.
monitor
строка
Длительность мониторинга после каждого отката задачи, чтобы определить ошибку.
Принимает строку в формате: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Соответствует параметру --rollback-monitor в docker service create.
Требуется версия API ≥ 1.28.
order
строка
Указывает порядок действий при откатах.
Соответствует параметру --rollback-order в docker service create.
Требуется версия API ≥ 1.29.
parallelism
целое число
Количество контейнеров, которые откатываются одновременно. Если значение равно 0, все контейнеры откатываются одновременно.
Соответствует параметру --rollback-parallelism в docker service create.
Требуется версия API ≥ 1.28.
secrets
список / элементы=словарь
Список словарей, описывающих секреты сервиса.
Соответствует параметру --secret в docker service create.
Требуется версия API ≥ 1.25.
filename
строка
Имя файла, содержащего секрет. По умолчанию, если не указано, используется secret_name.
Соответствует ключу target в docker service create --secret.
gid
строка
GID группы файла секрета.
mode
целое число
Режим доступа к файлу внутри контейнера. Должно быть восьмеричным числом (например, 0644 или 0444).
secret_id
строка
Идентификатор секрета.
secret_name
строка / обязательно
Имя секрета, определенное при его создании.
uid
строка
UID владельца файла секрета.
ssl_version
строка
Укажите версию SSL. Значение по умолчанию определяется модулем ssl.py.
Если значение не указано в задаче, вместо него используется значение переменной среды DOCKER_SSL_VERSION.
state
строка
    Варианты:
  • present ←
  • absent
absent - Сервис с указанным именем будет удален, а его задачи остановлены.
present - Подтверждает существование сервиса с указанным именем и параметрами конфигурации. Неуказанные параметры конфигурации будут установлены по умолчанию для Docker.
stop_grace_period
строка
Время ожидания перед принудительным завершением контейнера.
Принимает длительность в виде строки в формате: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Соответствует параметру --stop-grace-period в docker service create.
stop_signal
строка
Переопределяет используемый по умолчанию сигнал для остановки контейнера.
Соответствует параметру --stop-signal в docker service create.
timeout
целое число
По умолчанию:
60
Максимальное время в секундах ожидания ответа от API.
Если значение не указано в задаче, вместо него используется значение переменной среды DOCKER_TIMEOUT. Если переменная среды не установлена, используется значение по умолчанию.
tls
логическое значение
    Варианты:
  • no ←
  • yes
Обеспечить безопасное соединение с API, используя TLS без проверки подлинности хоста Docker. Обратите внимание, что если validate_certs также задано в значение yes, оно будет иметь приоритет.
Если значение не указано в задаче, вместо него используется значение переменной среды DOCKER_TLS. Если переменная среды не установлена, используется значение по умолчанию.
tls_hostname
строка
По умолчанию:
"localhost"
При проверке подлинности хоста Docker укажите ожидаемое имя хоста.
Если значение не указано в задаче, вместо него используется значение переменной среды DOCKER_TLS_HOSTNAME. Если переменная среды не установлена, используется значение по умолчанию.
tty
логическое значение
    Варианты:
  • no
  • yes
Выделить псевдо-TTY.
Соответствует параметру --tty в docker service create.
Требуется версия API ≥ 1.25.
update_config
словарь
Настраивает, как должен происходить процесс обновления сервиса. Полезно для настройки обновления с постепенным переходом.
delay
строка
Задержка при обновлении с постепенным переходом.
Принимает строку в формате: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Соответствует параметру --update-delay в docker service create.
failure_action
строка
    Варианты:
  • continue
  • pause
  • rollback
Действие в случае сбоя контейнера.
Соответствует параметру --update-failure-action в docker service create.
Использование rollback требует API версии ≥ 1.29.
max_failure_ratio
вещественное число
Доля задач, которые могут завершиться ошибкой во время обновления, прежде чем будет выполнено действие при ошибке.
Соответствует параметру --update-max-failure-ratio в docker service create.
Требуется версия API ≥ 1.25.
END_OF_DOCUMENT_MARKER
monitor
string
Время мониторинга обновлённых задач на наличие ошибок.
Принимает строку в формате: 5h34m56s, 1m30s и т.д. Поддерживаемые единицы измерения: us, ms, s, m и h.
Соответствует параметру --update-monitor в docker service create.
Требуется версия API >= 1.25.
order
string
Указывает порядок выполнения операций при развертывании обновлённой задачи.
Соответствует параметру --update-order в docker service create.
Требуется версия API >= 1.29.
parallelism
integer
Параллелизм развертывания.
Соответствует параметру --update-parallelism в docker service create.
user
string
Устанавливает имя пользователя или UID, используемые для указанной команды.
До Ansible 2.8 значение по умолчанию для этого параметра было root.
Значение по умолчанию удалено, чтобы в случае отсутствия указанного здесь пользователя использовался пользователь, определённый в изображении.
Соответствует параметру --user в docker service create.
validate_certs
boolean
    Choices:
  • нет ←
  • да
Обеспечение безопасного соединения с API с использованием TLS и проверка подлинности хоста Docker.
Если значение не указано в задаче, вместо него используется значение переменной окружения DOCKER_TLS_VERIFY. Если переменная окружения не задана, используется значение по умолчанию.

Псевдонимы: tls_verify
working_dir
string
Путь к рабочей директории.
Соответствует параметру --workdir в docker service create.

Примечания

Примечание

  • Изображения будут разрешаться только до последнего дайджеста при использовании Docker API >= 1.30 и Docker SDK для Python >= 3.2.0. При использовании более старых версий используйте force_update: true, чтобы заставить кластер Swarm разрешить новое изображение.
  • Подключение к демону 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.

Примеры

- name: Set command and arguments
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    command: sleep
    args:
      - "3600"

- name: Set a bind mount
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    mounts:
      - source: /tmp/
        target: /remote_tmp/
        type: bind

- name: Set service labels
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    labels:
      com.example.description: "Accounting webapp"
      com.example.department: "Finance"

- name: Set environment variables
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    env:
      ENVVAR1: envvar1
      ENVVAR2: envvar2
    env_files:
      - envs/common.env
      - envs/apps/web.env

- name: Set fluentd logging
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    logging:
      driver: fluentd
      options:
        fluentd-address: "127.0.0.1:24224"
        fluentd-async-connect: "true"
        tag: myservice

- name: Set restart policies
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    restart_config:
      condition: on-failure
      delay: 5s
      max_attempts: 3
      window: 120s

- name: Set update config
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    update_config:
      parallelism: 2
      delay: 10s
      order: stop-first

- name: Set rollback config
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine
    update_config:
      failure_action: rollback
    rollback_config:
      parallelism: 2
      delay: 10s
      order: stop-first

- name: Set placement preferences
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine:edge
    placement:
      preferences:
        - spread: node.labels.mylabel
      constraints:
        - node.role == manager
        - engine.labels.operatingsystem == ubuntu 14.04

- name: Set configs
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine:edge
    configs:
      - config_name: myconfig_name
        filename: "/tmp/config.txt"

- name: Set networks
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine:edge
    networks:
      - mynetwork

- name: Set networks as a dictionary
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine:edge
    networks:
      - name: "mynetwork"
        aliases:
          - "mynetwork_alias"
        options:
          foo: bar

- name: Set secrets
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine:edge
    secrets:
      - secret_name: mysecret_name
        filename: "/run/secrets/secret.txt"

- name: Start service with healthcheck
  community.docker.docker_swarm_service:
    name: myservice
    image: nginx:1.13
    healthcheck:
      # Check if nginx server is healthy by curl'ing the server.
      # If this fails or timeouts, the healthcheck fails.
      test: ["CMD", "curl", "--fail", "http://nginx.host.com"]
      interval: 1m30s
      timeout: 10s
      retries: 3
      start_period: 30s

- name: Configure service resources
  community.docker.docker_swarm_service:
    name: myservice
    image: alpine:edge
    reservations:
      cpus: 0.25
      memory: 20M
    limits:
      cpus: 0.50
      memory: 50M

- name: Remove service
  community.docker.docker_swarm_service:
    name: myservice
    state: absent

Значения возврата

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

Ключ Возвращаемое значение Описание
changes
список / элементы=строка
всегда
Список изменённых атрибутов сервиса, если сервис был изменён, иначе [].

Пример:
['container_labels', 'replicas']
rebuilt
булево
всегда
True, если сервис был пересоздан (удален и создан заново)

Пример:
True
swarm_service
словарь
всегда
Словарь переменных, представляющих текущее состояние сервиса. Соответствует формату параметров модуля.
Обратите внимание, что факты не являются частью зарегистрированных переменных, но к ним можно обратиться напрямую.
Обратите внимание, что до Ansible 2.7.9 возвращаемая переменная была документирована как ansible_swarm_service, в то время как модуль фактически возвращал переменную под названием ansible_docker_service. Переменная была переименована в swarm_service как в коде, так и в документации для Ansible 2.7.9 и Ansible 2.8.0. В Ansible 2.7.x старое имя ansible_docker_service по-прежнему может использоваться.

Пример:
{ "args": [ "3600" ], "command": [ "sleep" ], "configs": null, "constraints": [ "node.role == manager", "engine.labels.operatingsystem == ubuntu 14.04" ], "container_labels": null, "dns": null, "dns_options": null, "dns_search": null, "endpoint_mode": null, "env": [ "ENVVAR1=envvar1", "ENVVAR2=envvar2" ], "force_update": null, "groups": null, "healthcheck": { "interval": 90000000000, "retries": 3, "start_period": 30000000000, "test": [ "CMD", "curl", "--fail", "http://nginx.host.com" ], "timeout": 10000000000 }, "healthcheck_disabled": false, "hostname": null, "hosts": null, "image": "alpine:latest@sha256:b3dbf31b77fd99d9c08f780ce6f5282aba076d70a513a8be859d8d3a4d0c92b8", "labels": { "com.example.department": "Finance", "com.example.description": "Accounting webapp" }, "limit_cpu": 0.5, "limit_memory": 52428800, "log_driver": "fluentd", "log_driver_options": { "fluentd-address": "127.0.0.1:24224", "fluentd-async-connect": "true", "tag": "myservice" }, "mode": "replicated", "mounts": [ { "readonly": false, "source": "/tmp/", "target": "/remote_tmp/", "type": "bind", "labels": null, "propagation": null, "no_copy": null, "driver_config": null, "tmpfs_size": null, "tmpfs_mode": null } ], "networks": null, "placement_preferences": [ { "spread": "node.labels.mylabel" } ], "publish": null, "read_only": null, "replicas": 1, "reserve_cpu": 0.25, "reserve_memory": 20971520, "restart_policy": "on-failure", "restart_policy_attempts": 3, "restart_policy_delay": 5000000000, "restart_policy_window": 120000000000, "secrets": null, "stop_grace_period": null, "stop_signal": null, "tty": null, "update_delay": 10000000000, "update_failure_action": null, "update_max_failure_ratio": null, "update_monitor": null, "update_order": "stop-first", "update_parallelism": 2, "user": null, "working_dir": null }


Авторы

  • Dario Zanzico (@dariko)
  • Jason Witkowski (@jwitko)
  • Hannes Ljungberg (@hannseman)

© 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/docker/docker_swarm_service_module.html

Spec-Zone.ru

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