Spec-Zone.ru › Ansible

Модуль community.docker.docker_stack – модуль Docker stack

Примечание

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

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

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

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

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

Описание

  • Управление стеками Docker с помощью команды docker stack на целевом узле (см. примеры).

Требования

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

  • Инструмент Docker CLI docker
  • jsondiff
  • pyyaml

Параметры

Параметр

Комментарии

absent_retries

целое число

Если значение больше 0 и state=absent, модуль будет повторно пытаться удалить стек до absent_retries раз, пока все ресурсы не будут эффективно удалены. Если последняя попытка все еще указывает, что стек не удален полностью, модуль завершится с ошибкой.

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

absent_retries_interval

целое число

Интервал в секундах между последовательными absent_retries.

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

api_version

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

строка

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

Версия API Docker, работающая на хосте Docker.

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

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

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

ca_path

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

путь

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

Используйте сертификат CA при проверке сервера, указав путь к файлу сертификата CA.

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

cli_context

строка

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

Контекст Docker CLI для использования.

Взаимоисключающее с docker_host.

client_cert

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

путь

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

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

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

client_key

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

путь

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

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

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

compose

список / элементы=любые

Список определений compose. Любой элемент может быть строкой, указывающей путь к файлу compose на целевом хосте, или YAML-содержимым файла compose, вложенным как словарь.

По умолчанию: []

docker_cli

путь

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

Путь к Docker CLI. Если не указан, будет производиться поиск Docker CLI на PATH.

docker_host

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

строка

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

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

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

Взаимоисключающее с cli_context. Если ни docker_host ни cli_context не указаны, используется значение unix:///var/run/docker.sock.

name

строка / обязательно

Имя стека

prune

булево

Если true, добавит параметр --prune к команде docker stack deploy. Это заставит docker удалить сервисы, отсутствующие в текущем определении стека.

Варианты:

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

resolve_image

строка

Если задано, добавит параметр --resolve-image к команде docker stack deploy. Это заставит docker запросить у реестра информацию о дайджесте и поддерживаемых платформах изображений. Если не задано, docker использует «всегда» по умолчанию.

Варианты:

  • "always"
  • "changed"
  • "never"

состояние

строка

Состояние сервиса.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

tls

логическое

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

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

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

Варианты:

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

tls_hostname

строка

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

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

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

validate_certs

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

логическое

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

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

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

Варианты:

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

с_аутентификацией_реестра

логическое

Если значение true, добавит параметр --with-registry-auth к команде docker stack deploy. Это позволит Docker передавать данные об аутентификации реестра агентам Swarm.

Варианты:

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

Атрибуты

Атрибут

Поддержка

Описание

группа_действий

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

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

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

режим_проверки

Поддержка: нет

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

режим_сравнения

Поддержка: нет

Возвратит подробную информацию о том, что изменилось (или, возможно, нужно изменить в check_mode), когда режим сравнения включен.

Примечания

Примечание

  • Подключиться к демону 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 для Python для связи с демоном Docker. Он напрямую вызывает программу Docker CLI.

Примеры

- name: Deploy stack from a compose file
  community.docker.docker_stack:
    state: present
    name: mystack
    compose:
      - /opt/docker-compose.yml

- name: Deploy stack from base compose file and override the web service
  community.docker.docker_stack:
    state: present
    name: mystack
    compose:
      - /opt/docker-compose.yml
      - version: '3'
        services:
          web:
            image: nginx:latest
            environment:
              ENVVAR: envvar

- name: Remove stack
  community.docker.docker_stack:
    name: mystack
    state: absent

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

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

Ключ

Описание

stack_spec_diff

словарь

словарь, содержащий различия между полем «Spec» служб стека до и после применения нового определения стека.

Возвращается: при изменении

Пример: "\"stack_spec_diff\": {'test_stack_test_service': {u'TaskTemplate': {u'ContainerSpec': {delete: [u'Env']}}}}\n"

Авторы

  • Dario Zanzico (@dariko)

Ссылки на сборку

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

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

Spec-Zone.ru

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