Spec-Zone.ru › Ansible

community.docker.docker_container модуль — управление контейнерами Docker

Примечание

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

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

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

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

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

Описание

  • Управление жизненным циклом контейнеров Docker.
  • Поддерживает режим проверки. Запустите с --check и --diff для просмотра различий в конфигурации и списка действий, которые будут выполнены.

Требования

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

  • API Docker >= 1.25
  • backports.ssl_match_hostname (при использовании TLS в Python 2)
  • paramiko (при использовании SSH с use_ssh_client=false)
  • pyOpenSSL (при использовании TLS)
  • pywin32 (при использовании именованных каналов на Windows 32)
  • requests

Параметры

Параметр

Комментарии

api_version

aliases: docker_api_version

string

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

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

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

Default: "auto"

auto_remove

boolean

Включить автоматическое удаление контейнера на стороне демона, когда завершается процесс контейнера.

Если container_default_behavior=compatibility, этот параметр имеет значение по умолчанию false.

Choices:

  • false
  • true

blkio_weight

integer

Блокировка IO (относительный вес), от 10 до 1000.

ca_path

aliases: ca_cert, tls_ca_cert, cacert_path

path

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

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

Этот параметр назывался ca_cert и был переименован в ca_path в community.docker 3.6.0. Старое имя было добавлено как псевдоним и по-прежнему может использоваться.

cap_drop

list / elements=string

Список возможностей, которые нужно удалить из контейнера.

capabilities

list / elements=string

Список возможностей, которые нужно добавить в контейнер.

Это эквивалентно docker run --cap-add, или параметру docker-compose cap_add.

cgroup_parent

string

added in community.docker 1.1.0

Укажите родительскую cgroup для контейнера.

cgroupns_mode

string

added in community.docker 3.0.0

Укажите режим пространства имен cgroup для контейнера.

В Docker CLI это называется просто cgroupns.

Choices:

  • "host"
  • "private"

cleanup

boolean

Использовать с detach=false для удаления контейнера после успешного выполнения.

Choices:

  • false ← (default)
  • true

client_cert

aliases: tls_client_cert, cert_path

path

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

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

client_key

aliases: tls_client_key, key_path

path

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

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

command

any

Команда для выполнения при запуске контейнера. Команда может быть строкой или списком.

До версии 2.4 строки разделялись запятыми.

См. command_handling для различий в обработке строк и списков.

command_handling

string

added in community.docker 1.9.0

Поведение по умолчанию для command (при предоставлении в виде списка) и entrypoint заключается в преобразовании их в строки без учёта правил экранирования командной строки. (Для сравнения идемпотентности результирующая строка разбивается с учётом правил экранирования командной строки.)

Кроме того, установка command в пустой список строк и установка entrypoint в пустой список будет обрабатываться так, как если бы эти параметры не были указаны. Это отличается от обработки идемпотентности для других параметров, связанных с конфигурацией контейнера.

Если это установлено в compatibility, что было значением по умолчанию до community.docker 3.0.0, текущее поведение будет сохранено.

Если это установлено в correct, эти параметры сохраняются как списки, и пустое значение или пустой список будут правильно обрабатываться для проверок идемпотентности. Это значение по умолчанию с community.docker 3.0.0.

Choices:

  • "compatibility"
  • "correct" ← (default)

comparisons

словарь

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

Можно указать только параметры, соответствующие состоянию контейнера, обрабатываемому демоном Docker, а также networks.

Должен быть словарь, определяющий для параметра одно из значений strict, ignore и allow_more_present.

Если указано strict, значения проверяются на равенство, а изменения всегда приводят к обновлению или перезапуску. Если указано ignore, изменения игнорируются.

allow_more_present разрешено только для списков, множеств и словарей. Если оно указано для списков или множеств, контейнер будет обновлён или перезапущен только в том случае, если параметр модуля содержит значение, отсутствующее в параметрах контейнера. Если параметр указан для словаря, контейнер будет обновлён или перезапущен только в том случае, если параметр модуля содержит ключ, отсутствующий в параметрах контейнера, или если значение существующего ключа отличается.

Дикий символ * может использоваться для установки одного из значений по умолчанию strict или ignore для всех сравнений, которые не явно заданы другими значениями.

Подробности см. в примерах.

container_default_behavior

строка

В более ранних версиях этого модуля различные параметры модуля имели значения по умолчанию. Это вызывало проблемы с контейнерами, использующими разные значения для этих параметров.

Теперь значение по умолчанию no_defaults. Чтобы восстановить старое поведение, установите его в compatibility, что гарантирует использование значений по умолчанию, когда значения не явно указаны пользователем.

Это затрагивает параметры auto_remove, detach, init, interactive, memory, paused, privileged, read_only и tty.

Варианты:

  • "compatibility"
  • "no_defaults" ← (по умолчанию)

cpu_period

целое число

Ограничить период CPU CFS (Completely Fair Scheduler).

См. cpus для более удобной альтернативы.

cpu_quota

целое число

Ограничить квоту CPU CFS (Completely Fair Scheduler).

См. cpus для более удобной альтернативы.

cpu_shares

целое число

CPU доли (относительный вес).

cpus

вещественное число

Укажите, сколько доступных ресурсов процессора может использовать контейнер.

Значение 1.5 означает, что будет использоваться не более полутора процессоров (ядер).

cpuset_cpus

строка

Процессоры, в которых разрешено выполнение.

Например, 1,3 или 1-3.

cpuset_mems

строка

Узлы памяти (MEM) для выполнения 0-3 или 0,1.

debug

логический тип

Режим отладки

Варианты:

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

default_host_ip

строка

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

Определите IP-адрес хоста по умолчанию.

Должен быть пустой строкой, IPv4-адресом или IPv6-адресом.

С Docker 20.10.2 или более поздней версией это значение должно быть пустой строкой (""), чтобы избежать привязки портов без явного IP-адреса, чтобы привязка происходила только к IPv4. Подробнее см. https://github.com/ansible-collections/community.docker/issues/70.

По умолчанию модуль попытается автоматически определить это значение из параметра bridge сети com.docker.network.bridge.host_binding_ipv4. Если автоматическое определение не удастся, он вернётся к значению 0.0.0.0.

detach

логический тип

Включить режим открепления для запуска контейнера в фоновом режиме.

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

Если container_default_behavior=compatibility, значение этого параметра по умолчанию true.

Варианты:

  • false
  • true

device_cgroup_rules

список / элементы=строка

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

Список правил cgroup для применения к контейнеру.

device_read_bps

список / элементы=словарь

Список путей к устройствам и скорости чтения (байты в секунду) с устройства.

path

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

Путь к устройству в контейнере.

rate

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

Предел чтения устройства в формате <number>[<unit>].

Число — положительное целое. Единица измерения может быть одной из B (байт), K (кибибайт, 1024 байта), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).

Пропуск единицы измерения по умолчанию соответствует байтам.

device_read_iops

список / элементы=словарь

Список устройств и скорости чтения (IO в секунду) с устройства.

path

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

Путь к устройству в контейнере.

END_OF_DOCUMENT_MARKER

скорость

целое число / обязательно

Предел чтения устройства.

Должно быть положительным целым числом.

device_requests

список / элементы=словарь

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

Позволяет запросить дополнительные ресурсы, такие как GPU.

capabilities

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

Список списков строк для запроса возможностей.

Элементы верхнего уровня списка объединяются с помощью ИЛИ, а для каждого элемента списка элементы, которые он содержит, объединяются с помощью И.

Драйвер пытается удовлетворить один из подсписков.

Доступные возможности для драйвера nvidia можно найти по адресу https://github.com/NVIDIA/nvidia-container-runtime.

count

целое число

Количество устройств для запроса.

Установите в -1 для запроса всех доступных устройств.

device_ids

список / элементы=строка

Список идентификаторов устройств.

драйвер

строка

Какой драйвер использовать для этого устройства.

options

словарь

Параметры, специфичные для драйвера.

device_write_bps

список / элементы=словарь

Список устройства и скорости записи (байты в секунду) на устройство.

путь

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

Путь к устройству в контейнере.

скорость

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

Предел чтения устройства в формате <number>[<unit>].

Число — положительное целое число. Единица может быть одной из B (байт), K (кибибайт, 1024Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).

Пропуск единицы по умолчанию означает байты.

device_write_iops

список / элементы=словарь

Список устройства и скорости записи (Ввод/вывод в секунду) на устройство.

путь

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

Путь к устройству в контейнере.

скорость

целое число / обязательно

Предел чтения устройства.

Должно быть положительным целым числом.

devices

список / элементы=строка

Список привязок устройств хоста для добавления в контейнер.

Каждая привязка — это отображение, выраженное в формате <path_on_host>:<path_in_container>:<cgroup_permissions>.

dns_opts

список / элементы=строка

Список параметров DNS.

dns_search_domains

список / элементы=строка

Список пользовательских доменных имен DNS.

dns_servers

список / элементы=строка

Список пользовательских серверов DNS.

docker_host

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

строка

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

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

По умолчанию: "unix:///var/run/docker.sock"

domainname

строка

Имя домена контейнера.

entrypoint

список / элементы=строка

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

См. command_handling для различий в обработке строк и списков.

env

словарь

Словарь пар ключ-значение.

Значения, которые могут быть распарсены как числа, булевы значения или другие типы с помощью парсера YAML, должны быть заключены в кавычки (например, "true") для предотвращения потери данных.

Обратите внимание, что при передаче значений с помощью шаблонов Jinja2, например, "{{ value }}", вам нужно добавить | string для предотвращения преобразования Ansible строк, таких как "true", обратно в булевы значения. Правильный способ — использовать "{{ value | string }}".

env_file

путь

Путь к файлу на целевом сервере, содержащему переменные среды FOO=BAR.

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

etc_hosts

словарь

Словарь сопоставлений имя хоста — IP-адрес, где имя хоста — ключ в словаре. Каждое имя хоста будет добавлено в файл /etc/hosts контейнера.

Вместо IP-адреса также можно использовать специальное значение host-gateway, которое разрешается до IP-адреса шлюза хоста и позволяет контейнерам подключаться к службам, работающим на хосте.

exposed_ports

псевдонимы: exposed, expose

список / элементы=строка

Список дополнительных портов контейнера, который сообщает Docker, что контейнер прослушивает указанные сетевые порты во время выполнения.

Если порт уже открыт с помощью EXPOSE в Dockerfile, его не нужно открывать снова.

force_kill

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

логическое

Использовать команду kill при остановке работающего контейнера.

Варианты:

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

groups

список / элементы=строка

Список дополнительных имен и/или идентификаторов групп, под которыми будет работать процесс контейнера.

healthcheck

словарь

Настройка проверки для определения состояния «здоровья» контейнеров данной службы.

Подробности о работе healthcheck см. в документации к инструкции HEALTHCHECK Dockerfile instruction.

healthcheck.interval, healthcheck.timeout, healthcheck.start_period, и healthcheck.start_interval указаны как продолжительности. Они принимают продолжительность в формате, похожем на: 5h34m56s, 1m30s, и так далее. Поддерживаемые единицы измерения — us, ms, s, m и h.

См. также state=healthy.

interval

строка

Периодичность выполнения проверки.

Значение по умолчанию, используемое демоном Docker, — 30s.

retries

целое число

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

Значение по умолчанию, используемое демоном Docker, — 3.

start_interval

строка

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

Время между проверками состояния во время начального периода. Этот параметр требует Docker Engine версии 25.0 или более поздней.

Значение по умолчанию, используемое демоном Docker, — 5s.

start_period

строка

Начальный период для инициализации контейнера перед запуском отсчета перезапуска проверок состояния.

Значение по умолчанию, используемое демоном Docker, — 0s.

test

любой

Команда для проверки состояния.

Должна быть либо строкой, либо списком. Если это список, первый элемент должен быть одним из NONE, CMD или CMD-SHELL.

test_cli_compatible

логическое

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

Если установлено в true, пропуск healthcheck.test при указании healthcheck не отключает проверки состояния, а просто переписывает значения образа теми, которые указаны в healthcheck. Это поведение используется в Docker CLI.

Если установлено в false, пропуск healthcheck.test отключит проверку состояния контейнера. Это классическое поведение модуля и в настоящее время поведение по умолчанию.

Варианты:

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

timeout

строка

Максимальное время для выполнения одной проверки.

Значение по умолчанию, используемое демоном Docker, — 30s.

healthy_wait_timeout

число с плавающей точкой

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

При ожидании достижения контейнером здорового состояния, если state=healthy, этот параметр контролирует, как долго модуль ожидает, пока состояние контейнера не станет здоровым.

Таймаут указан в секундах. Значение по умолчанию — 300, 5 минут.

Установите значение 0 или отрицательное значение, чтобы ждать неограниченно. Обратите внимание, что в зависимости от контейнера это может привести к тому, что модуль не завершится.

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

hostname

строка

Имя хоста контейнера.

END_OF_DOCUMENT_MARKER

ignore_image

boolean

Когда state есть present или started, модуль сравнивает конфигурацию существующего контейнера с запрошенной конфигурацией. Оценка включает версию образа. Если версия образа в реестре не совпадает с контейнером, контейнер будет пересоздан. Вы можете остановить это поведение, установив ignore_image в true.

Предупреждение: Эта опция игнорируется, если image: ignore или *: ignore указано в опции comparisons.

Эта опция устарела начиная с community.docker 3.2.0 и будет удалена в community.docker 4.0.0. Используйте image: ignore в comparisons вместо ignore_image=true.

Варианты:

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

image

string

Путь к репозиторию и тег, используемые для создания контейнера. Если образ не найден или pull имеет значение true, образ будет вытащен из реестра. Если тег не указан, будет использован latest.

Может быть также ID образа. В этом случае предполагается, что образ доступен локально. Опция pull игнорируется в этом случае.

image_comparison

string

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

Определяет, какой образ использовать для проверок идемпотентности, которые зависят от параметров образа.

Значение по умолчанию, desired-image, будет использовать образ, предоставленный модулю через параметр image.

current-image будет использовать образ, который контейнер использует в данный момент, если контейнер существует. Он возвращается к образу, предоставленному в случае, если контейнер еще не существует.

Это влияет на параметры env, env_file, exposed_ports, labels и volumes.

Варианты:

  • "desired-image" ← (по умолчанию)
  • "current-image"

image_label_mismatch

string

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

Как обрабатывать метки, унаследованные от образа, которые не установлены явно.

Когда ignore, метки, присутствующие в образе, но не указанные в labels, будут игнорироваться. Это полезно для того, чтобы не указывать метки образа в labels при сохранении меток comparisons strict.

Когда fail, если есть метки, присутствующие в образе, которые не установлены из labels, модуль завершится с ошибкой. Это предотвращает внесение неожиданных меток из базового образа.

Предупреждение: Эта опция игнорируется, если только labels: strict или *: strict не указано в опции comparisons.

Варианты:

  • "ignore" ← (по умолчанию)
  • "fail"

image_name_mismatch

string

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

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

Это игнорируется, если image: ignore установлено в comparisons.

Если установлено в recreate, контейнер будет пересоздан.

Если установлено в ignore (в настоящее время по умолчанию), контейнер не будет пересоздан из-за этого. Он все еще может быть пересоздан по другим причинам. Это было поведение модуля по умолчанию в течение длительного времени, но может не соответствовать ожиданиям пользователей.

Начиная с community.docker 3.5.0, значение по умолчанию ignore устарело. Если не указано, будет выведено предупреждение об устаревании, если эта настройка повлияет на результат. Значение по умолчанию изменится на recreate в community.docker 4.0.0.

Варианты:

  • "recreate"
  • "ignore"

init

boolean

Запускает init внутри контейнера, который перенаправляет сигналы и собирает процессы.

Если container_default_behavior=compatibility, эта опция имеет значение по умолчанию false.

Варианты:

  • false
  • true

interactive

boolean

Держит stdin открытым после запуска контейнера, даже если он не прикреплен.

Если container_default_behavior=compatibility, эта опция имеет значение по умолчанию false.

Варианты:

  • false
  • true

ipc_mode

string

Устанавливает режим IPC для контейнера.

Может быть одним из container:<name|id> для повторного использования пространства имен IPC другого контейнера или host для использования пространства имен IPC хоста внутри контейнера.

keep_volumes

boolean

Сохраняет анонимные тома, связанные с удаленным контейнером.

Варианты:

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

kernel_memory

string

Лимит памяти ядра в формате <number>[<unit>]. Число - положительное целое число. Единица измерения может быть B (байт), K (кибибайт, 1024B), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт). Минимум - 4M.

Пропуск единицы измерения по умолчанию означает байты.

kill_signal

string

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

labels

dictionary

Словарь пар ключ-значение.

links

list / elements=string

Список псевдонимов имен для связанных контейнеров в формате container_name:alias.

Установка этого параметра приведет к принудительному перезапуску контейнера.

log_driver

string

Укажите драйвер ведения журнала. Docker использует json-file по умолчанию.

См. документацию по настройке ведения журнала Docker для возможных вариантов.

log_options

aliases: log_opt

dictionary

Словарь параметров, специфичных для выбранного log_driver.

См. https://docs.docker.com/engine/admin/logging/overview/ для получения подробной информации.

log_driver необходимо указать для того, чтобы log_options вступило в силу, даже если используется драйвер json-file по умолчанию.

mac_address

string

MAC-адрес контейнера (например, 92:d0:c6:0a:29:33).

Обратите внимание, что глобальный MAC-адрес контейнера устарел и больше не используется с версии Docker API 1.44.

Используйте networks[].mac_address вместо этого.

memory

string

Ограничение памяти в формате <number>[<unit>]. Число — положительное целое. Единица измерения может быть B (байт), K (кибибайт, 1024Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).

Пропуск единицы измерения по умолчанию устанавливает значение в байтах.

Если container_default_behavior=compatibility, по умолчанию для этого параметра установлено значение "0".

memory_reservation

string

Мягкое ограничение памяти в формате <number>[<unit>]. Число — положительное целое. Единица измерения может быть B (байт), K (кибибайт, 1024Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).

Пропуск единицы измерения по умолчанию устанавливает значение в байтах.

memory_swap

string

Общее ограничение памяти (память + своп) в формате <number>[<unit>], или специальные значения unlimited или -1 для неограниченного использования свопа. Число — положительное целое. Единица измерения может быть B (байт), K (кибибайт, 1024Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).

Пропуск единицы измерения по умолчанию устанавливает значение в байтах.

memory_swappiness

integer

Настройка поведения свопинга памяти контейнера. Принимает целое число от 0 до 100.

Если не задано, значение останется прежним, если контейнер существует, и будет унаследовано от хост-машины при его (повторном) создании.

mounts

list / elements=dictionary

Спецификация для монтирования, добавляемых в контейнер. Более мощная альтернатива volumes.

consistency

string

Требование согласованности для монтирования.

Варианты:

  • "cached"
  • "consistent"
  • "default"
  • "delegated"

labels

dictionary

Определенные пользователем имена и метки для тома. Действительно только для типа volume.

no_copy

boolean

False, если том должен быть заполнен данными из целевого источника. Действительно только для типа volume.

Значение по умолчанию — false.

Варианты:

  • false
  • true

propagation

string

Режим распространения. Действительно только для типа bind.

Варианты:

  • "private"
  • "rprivate"
  • "shared"
  • "rshared"
  • "slave"
  • "rslave"

read_only

boolean

Является ли монтирование только для чтения.

Варианты:

  • false
  • true

source

string

Источник монтирования.

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

Если не задано, при mounts[].type=volume будет создан анонимный том.

target

string / required

Путь внутри контейнера.

tmpfs_mode

string

Режим разрешений для tmpfs-монтирования.

tmpfs_size

string

Размер tmpfs-монтирования в байтах в формате <число>[<единица>].

Число — положительное целое. Единица измерения может быть одной из B (байт), K (кибибайт, 1024Б), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).

Пропуск единицы измерения по умолчанию устанавливает значение в байтах.

type

string

Тип монтирования.

Обратите внимание, что npipe поддерживается только Docker для Windows.

Варианты:

  • "bind"
  • "npipe"
  • "tmpfs"
  • "volume" ← (по умолчанию)

volume_driver

string

Укажите драйвер тома. Действительно только для типа volume.

Подробности см. здесь.

volume_options

dictionary

Словарь параметров, специфичных для выбранного драйвера томов. Подробности см. здесь.

name

string / обязательно

Присвойте имя новому контейнеру или сопоставьте существующий контейнер.

При идентификации существующего контейнера имя может быть именем или длинным или коротким идентификатором контейнера.

network_mode

string

Подключить контейнер к сети. Доступные варианты: bridge, host, none, container:<name|id>, <network_name> или default.

Начиная с community.docker 2.0.0, если networks_cli_compatible=true и networks содержат хотя бы одну сеть, значение по умолчанию для network_mode — имя первой сети в списке networks. Вы можете предотвратить это, явно указав значение для network_mode, например, значение по умолчанию default, которое будет использоваться Docker, если network_mode не указано.

networks

list / elements=dictionary

Список сетей, к которым принадлежит контейнер.

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

Чтобы удалить контейнер из одной или нескольких сетей, используйте networks: strict в параметре comparisons.

Если networks_cli_compatible=false, это не удалит сеть по умолчанию, если networks указано. Это отличается от поведения docker run .... Вам нужно явно использовать networks: strict в comparisons, чтобы обеспечить удаление сети по умолчанию (и всех других сетей, не явно упомянутых в networks) в этом случае.

aliases

list / elements=string

Список псевдонимов для этого контейнера в этой сети. Эти имена могут быть использованы в сети для доступа к этому контейнеру.

ipv4_address

string

IP-адрес контейнера в этой сети.

ipv6_address

string

IPv6-адрес контейнера в этой сети.

links

list / elements=string

Список контейнеров, с которыми нужно установить связь.

mac_address

string

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

MAC-адрес конечной точки (например, 92:d0:c6:0a:29:33).

Доступно только для версии Docker API 1.44 и более поздних.

Обратите внимание, что при подключении контейнера к сети после создания, это в настоящее время игнорируется демоном Docker, по крайней мере, в некоторых случаях. При указании при создании, это, похоже, работает лучше.

name

string / обязательно

Имя сети.

networks_cli_compatible

boolean

Если networks_cli_compatible=true (по умолчанию), этот модуль будет вести себя как docker run --network и не добавит сеть по умолчанию, если networks указано. Если networks не указано, сеть по умолчанию будет подключена.

Когда networks_cli_compatible=false и сети предоставляются модулю через параметр networks, поведение модуля отличается от docker run --network: docker run --network other создаст контейнер с подключенной сетью other, но без сети по умолчанию. Этот модуль с networks равным {name: other} создаст контейнер с подключенными как default, так и other. Если networks: strict или *: strict установлены в comparisons, сеть default будет удалена после этого.

Варианты:

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

oom_killer

boolean

Отключить или включить механизм OOM Killer для контейнера.

Варианты:

  • false
  • true

oom_score_adj

integer

Целое число, определяющее приоритет контейнера для механизма OOM Killer.

output_logs

boolean

Если установлено в true, вывод команд контейнера будет выводиться на экран.

Эффективно только когда log_driver установлено в json-file, journald, или local.

Варианты:

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

paused

boolean

Используется со статусом started для приостановки работающих процессов внутри контейнера.

Если container_default_behavior=compatibility, этот параметр имеет значение по умолчанию false.

Варианты:

  • false
  • true

pid_mode

string

Устанавливает режим пространства имен PID для контейнера.

pids_limit

integer

Устанавливает лимит PIDs для контейнера. Принимает целое значение.

Установите -1 для неограниченного количества PIDs.

platform

string

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

Платформа для контейнера в формате os[/arch[/variant]].

Обратите внимание, что начиная с community.docker 3.5.0, модуль использует как метаданные изображения, так и информацию демона Docker для нормализации строк платформы, аналогично тому, как это делает сам Docker. Если вы заметите проблемы с идемпотентностью, пожалуйста, создайте вопрос в репозитории community.docker на GitHub. Для более старых версий community.docker вы можете использовать параметр comparisons со значением platform: ignore для предотвращения случайного пересоздания контейнера из-за этого.

privileged

boolean

Предоставление расширенных привилегий контейнеру.

Если container_default_behavior=compatibility, этот параметр имеет значение по умолчанию false.

Варианты:

  • false
  • true

publish_all_ports

boolean

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

Опубликовать все порты на хост.

Любые указанные привязки портов из published_ports останутся неизменными, когда true.

Варианты:

  • false
  • true

published_ports

aliases: ports

list / elements=string

Список портов для публикации из контейнера на хост.

Используйте синтаксис docker CLI: 8000, 9000:8000, или 0.0.0.0:9000:8000, где 8000 - порт контейнера, 9000 - порт хоста, а 0.0.0.0 - интерфейс хоста.

Для исходных и целевых портов можно использовать диапазоны портов. Если указаны два диапазона с разной длиной, будет использован более короткий диапазон. Начиная с community.general 0.2.0, если исходный диапазон портов имеет длину 1, порт не будет назначен первому порту целевого диапазона, а свободному порту в этом диапазоне. Это поведение аналогично docker утилите командной строки.

Адреса привязки должны быть либо IPv4, либо IPv6 адресами. Имена хостов не допускаются. Это отличается от docker утилиты командной строки. Используйте community.general.dig lookup для разрешения имён хостов.

Если указан параметр networks, будет проверен каждый сетевой интерфейс, чтобы определить, существует ли мостовой сетевой интерфейс с необязательным параметром com.docker.network.bridge.host_binding_ipv4. Если такой сетевой интерфейс найден, то опубликованные порты, где не указан адрес IP хоста, будут привязаны к адресу IP хоста, указанному в com.docker.network.bridge.host_binding_ipv4. Обратите внимание, что первый мостовой сетевой интерфейс со значением com.docker.network.bridge.host_binding_ipv4 в списке networks будет использован.

Значение all было разрешено в предыдущих версиях этого модуля. Поддержка была удалена в community.docker 3.0.0. Используйте вместо этого параметр publish_all_ports.

pull

any

Если установлено never, попытка скачать изображение никогда не будет осуществляться. Произойдёт ошибка, если изображение недоступно на демоне Docker.

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

Если установлено always или true, всегда будет осуществляться попытка скачивания последней версии изображения.

Примечание: изображения скачиваются только при указании имени. Если изображение указано как идентификатор изображения (хеш), оно не может быть скачано, и этот параметр игнорируется.

Примечание: значения never, missing, и always доступны только начиная с community.docker 3.8.0. Более ранние версии поддерживают только true и false.

Варианты:

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

pull_check_mode_behavior

string

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

Позволяет настроить поведение при pull=always или pull=true в режиме проверки.

Поскольку демон Docker не предоставляет функциональности для проверки, приведет ли скачивание к изменению изображения, модуль по умолчанию действует так, как будто pull=always приводит к изменению только тогда, когда изображения нет.

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

Если установлено always, изменения в режиме проверки всегда будут отражаться.

Варианты:

  • "image_not_present" ← (по умолчанию)
  • "always"

purge_networks

boolean

Удалить контейнер из ВСЕХ сетей, не включённых в параметр networks.

Любые сетевые интерфейсы по умолчанию, такие как bridge, если не найдены в networks, также будут удалены.

Этот параметр устарел с community.docker 3.2.0 и будет удалён в community.docker 4.0.0. Используйте networks: strict в comparisons вместо purge_networks=true, и убедитесь, что networks указано. Если вы хотите удалить все сети, укажите networks как [].

Варианты:

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

read_only

boolean

Монтирование корневой файловой системы контейнера в режиме только для чтения.

Если container_default_behavior=compatibility, этот параметр имеет значение по умолчанию false.

Варианты:

  • false
  • true

recreate

boolean

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

Выбираемые значения:

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

removal_wait_timeout

float

При удалении существующего контейнера, вызов API docker-демона выполняется после того, как контейнер запланирован на удаление. Обычно удаление происходит очень быстро, но при высокой нагрузке на ввод-вывод удаление может занять больше времени.

По умолчанию модуль ожидает удаления контейнера, сколько бы это ни заняло.

Установив этот параметр, модуль будет ждать не более указанного количества секунд, пока контейнер не будет удален. Если контейнер по-прежнему находится на стадии удаления после этого времени, модуль завершится ошибкой.

restart

boolean

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

Выбираемые значения:

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

restart_policy

string

Политика перезапуска контейнера.

Включите кавычки вокруг параметра no.

Выбираемые значения:

  • "no"
  • "on-failure"
  • "always"
  • "unless-stopped"

restart_retries

integer

Использовать с политикой перезапуска для управления максимальным количеством попыток перезапуска.

runtime

string

Используемая среда выполнения для контейнера.

security_opts

list / elements=string

Список параметров безопасности в формате "label:user:User".

shm_size

string

Размер /dev/shm в формате <number>[<unit>]. Число - положительное целое. Единица измерения может быть B (байт), K (кибибайт, 1024 байта), M (мебибайт), G (гибибайт), T (тебибайт) или P (пебибайт).

Опущение единицы измерения по умолчанию предполагает байты. Если размер опущен совсем, Docker-демон использует 64M.

ssl_version

string

Укажите действительную версию SSL. Значение по умолчанию определяется модулем SSL Python .

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

state

string

absent - Контейнер, соответствующий указанному имени, будет остановлен и удален. Используйте force_kill для завершения контейнера вместо остановки. Используйте keep_volumes для сохранения анонимных томов, связанных с удаленным контейнером.

present - Подтверждает существование контейнера, соответствующего имени и любым предоставленным параметрам конфигурации. Если соответствующий контейнер не найден, он будет создан. Если контейнер соответствует имени, но предоставленная конфигурация не совпадает, контейнер будет обновлён, если это возможно. Если обновление невозможно, он будет удалён и пересоздан с запрошенной конфигурацией.

started - Требует, чтобы контейнер сначала present, а затем, если контейнер не запущен, переводит его в состояние работы. Используйте restart для принудительного остановления и перезапуска соответствующего контейнера.

healthy - Требует, чтобы контейнер был present и started, а также был работоспособен. Это означает, что условия, определённые в healthcheck соответственно в проверке работоспособности изображения HEALTHCHECK (Docker reference for HEALTHCHECK) выполнены. Время ожидания может быть контролируемо с помощью healthy_wait_timeout. Этот состояние был добавлен в community.docker 3.11.0.

stopped - Требует, чтобы контейнер сначала present, а затем, если контейнер запущен, переводит его в состояние остановки.

Чтобы контролировать, что будет учитываться при сравнении конфигурации, см. параметр comparisons. Чтобы избежать учёта версии изображения, можно также использовать image: ignore в параметре comparisons.

Используйте параметр recreate для всегда принудительного пересоздания соответствующего контейнера, даже если он запущен.

Если контейнер должен быть завершён вместо остановки в случае необходимости остановки для пересоздания, или потому что state stopped, пожалуйста, используйте параметр force_kill . Используйте keep_volumes для сохранения анонимных томов, связанных с удалённым контейнером.

Используйте keep_volumes для сохранения анонимных томов, связанных с удалённым контейнером.

Выбираемые значения:

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

stop_signal

string

Переопределить стандартный сигнал, используемый для остановки контейнера.

stop_timeout

integer

Количество секунд ожидания остановки контейнера перед отправкой SIGKILL. При создании контейнера этим модулем его параметр StopTimeout будет установлен на это значение.

При остановке контейнера используется как таймаут для остановки контейнера. В случае если контейнер имеет пользовательскую конфигурацию StopTimeout , поведение зависит от версии docker-демона. Новые версии docker-демона всегда будут использовать значение StopTimeout контейнера, если оно было настроено.

storage_opts

dictionary

added in community.docker 1.3.0

Параметры драйвера хранения для данного контейнера в виде сопоставления ключ-значение.

sysctls

dictionary

Словарь пар ключ-значение.

timeout

integer

Максимальное время ожидания ответа от API в секундах.

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

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

tls

boolean

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

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

Варианты:

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

tls_hostname

string

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

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

Обратите внимание, что в более ранних версиях этот параметр имел значение localhost по умолчанию. Он был удалён в community.docker 3.0.0.

tmpfs

list / elements=string

Монтирование временной директории tmpfs.

tty

boolean

Выделить псевдотерминал TTY.

Если container_default_behavior=compatibility, по умолчанию будет false.

Варианты:

  • false
  • true

ulimits

list / elements=string

Список параметров ulimit. Устанавливается как nofile:262144:262144.

use_ssh_client

boolean

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

Для SSH-транспортов использовать инструмент ssh CLI вместо paramiko.

Варианты:

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

user

string

Устанавливает имя пользователя или UID, а также необязательно имя группы или GID для указанной команды.

Может быть в формате user, user:group, uid, uid:gid, user:gid или uid:group.

userns_mode

string

Установить режим пространства имён пользователя для контейнера. В настоящее время допустимы только host и пустая строка ("").

uts

string

Установить режим пространства имён UTS для контейнера.

validate_certs

aliases: tls_verify

boolean

Обеспечить безопасное соединение с API с использованием TLS и проверкой подлинности хоста Docker.

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

Варианты:

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

volume_driver

string

Драйвер контейнерных томов.

volumes

list / elements=string

Список томов для монтирования внутри контейнера.

Используйте синтаксис docker CLI: /host:/container[:mode]

Режимы монтирования могут быть перечислены через запятую, такими как ro, rw, consistent, delegated, cached, rprivate, private, rshared, shared, rslave, slave, и nocopy. Обратите внимание, что демона docker могут не поддерживать все режимы и комбинации режимов.

SELinux-хосты могут дополнительно использовать z или Z для использования общего или частного тега для тома.

Обратите внимание, что Ansible 2.7 и более ранние версии поддерживали только один режим, который должен был быть одним из ro, rw, z, и Z.

volumes_from

list / elements=string

Список имён или ID контейнеров для получения томов.

working_dir

string

Путь к рабочей директории.

Атрибуты

Атрибут

Поддержка

Описание

action_group

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

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

check_mode

Поддержка: частичная

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

Это поведение можно настроить с помощью pull_check_mode_behavior.

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

diff_mode

Поддержка: полная

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

Примечания

Примечание

  • Для большинства изменений конфигурации необходимо пересоздать контейнер. Это означает, что существующий контейнер должен быть уничтожен, и создан новый. Это может привести к непредвиденной потере данных и простоям. Вы можете использовать опцию comparisons, чтобы этого избежать.
  • Если модулю необходимо пересоздать контейнер, он будет использовать только опции, предоставленные модулю для создания нового контейнера (кроме image). Поэтому всегда указывайте все опции, относящиеся к контейнеру.
  • Когда restart установлено в true, модуль будет перезапускать контейнер только в случае отсутствия изменений конфигурации.
  • Подключение к 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 SDK for Python для взаимодействия с Docker-демоном. Он использует код, полученный из Docker SDK или Python, который включён в данную коллекцию.

Примеры

- name: Create a data container
  community.docker.docker_container:
    name: mydata
    image: busybox
    volumes:
      - /data

- name: Re-create a redis container
  community.docker.docker_container:
    name: myredis
    image: redis
    command: redis-server --appendonly yes
    state: present
    recreate: true
    exposed_ports:
      - 6379
    volumes_from:
      - mydata

- name: Restart a container
  community.docker.docker_container:
    name: myapplication
    image: someuser/appimage
    state: started
    restart: true
    links:
     - "myredis:aliasedredis"
    devices:
     - "/dev/sda:/dev/xvda:rwm"
    ports:
     # Publish container port 9000 as host port 8080
     - "8080:9000"
     # Publish container UDP port 9001 as host port 8081 on interface 127.0.0.1
     - "127.0.0.1:8081:9001/udp"
     # Publish container port 9002 as a random host port
     - "9002"
     # Publish container port 9003 as a free host port in range 8000-8100
     # (the host port will be selected by the Docker daemon)
     - "8000-8100:9003"
     # Publish container ports 9010-9020 to host ports 7000-7010
     - "7000-7010:9010-9020"
    env:
        SECRET_KEY: "ssssh"
        # Values which might be parsed as numbers, booleans or other types by the YAML parser need to be quoted
        BOOLEAN_KEY: "yes"

- name: Container present
  community.docker.docker_container:
    name: mycontainer
    state: present
    image: ubuntu:14.04
    command: sleep infinity

- name: Stop a container
  community.docker.docker_container:
    name: mycontainer
    state: stopped

- name: Start 4 load-balanced containers
  community.docker.docker_container:
    name: "container{{ item }}"
    recreate: true
    image: someuser/anotherappimage
    command: sleep 1d
  with_sequence: count=4

- name: Remove container
  community.docker.docker_container:
    name: ohno
    state: absent

- name: Syslogging output
  community.docker.docker_container:
    name: myservice
    image: busybox
    log_driver: syslog
    log_options:
      syslog-address: tcp://my-syslog-server:514
      syslog-facility: daemon
      # NOTE: in Docker 1.13+ the "syslog-tag" option was renamed to "tag" for
      # older docker installs, use "syslog-tag" instead
      tag: myservice

- name: Create db container and connect to network
  community.docker.docker_container:
    name: db_test
    image: "postgres:latest"
    networks:
      - name: "{{ docker_network_name }}"

- name: Start container, connect to network and link
  community.docker.docker_container:
    name: sleeper
    image: ubuntu:14.04
    networks:
      - name: TestingNet
        ipv4_address: "172.16.1.100"
        aliases:
          - sleepyzz
        links:
          - db_test:db
      - name: TestingNet2

- name: Start a container with a command
  community.docker.docker_container:
    name: sleepy
    image: ubuntu:14.04
    command: ["sleep", "infinity"]

- name: Add container to networks
  community.docker.docker_container:
    name: sleepy
    networks:
      - name: TestingNet
        ipv4_address: 172.16.1.18
        links:
          - sleeper
      - name: TestingNet2
        ipv4_address: 172.16.10.20

- name: Update network with aliases
  community.docker.docker_container:
    name: sleepy
    networks:
      - name: TestingNet
        aliases:
          - sleepyz
          - zzzz

- name: Remove container from one network
  community.docker.docker_container:
    name: sleepy
    networks:
      - name: TestingNet2
    comparisons:
      networks: strict

- name: Remove container from all networks
  community.docker.docker_container:
    name: sleepy
    comparisons:
      networks: strict

- name: Start a container and use an env file
  community.docker.docker_container:
    name: agent
    image: jenkinsci/ssh-slave
    env_file: /var/tmp/jenkins/agent.env

- name: Create a container with limited capabilities
  community.docker.docker_container:
    name: sleepy
    image: ubuntu:16.04
    command: sleep infinity
    capabilities:
      - sys_time
    cap_drop:
      - all

- name: Finer container restart/update control
  community.docker.docker_container:
    name: test
    image: ubuntu:18.04
    env:
      arg1: "true"
      arg2: "whatever"
    volumes:
      - /tmp:/tmp
    comparisons:
      image: ignore   # do not restart containers with older versions of the image
      env: strict   # we want precisely this environment
      volumes: allow_more_present   # if there are more volumes, that's ok, as long as `/tmp:/tmp` is there

- name: Finer container restart/update control II
  community.docker.docker_container:
    name: test
    image: ubuntu:18.04
    env:
      arg1: "true"
      arg2: "whatever"
    comparisons:
      '*': ignore  # by default, ignore *all* options (including image)
      env: strict   # except for environment variables; there, we want to be strict

- name: Start container with healthstatus
  community.docker.docker_container:
    name: nginx-proxy
    image: nginx:1.13
    state: started
    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
      start_interval: 10s

- name: Remove healthcheck from container
  community.docker.docker_container:
    name: nginx-proxy
    image: nginx:1.13
    state: started
    healthcheck:
      # The "NONE" check needs to be specified
      test: ["NONE"]

- name: Create a tmpfs with a size and mode
  community.docker.docker_container:
    name: tmpfs test
    image: ubuntu:22.04
    state: started
    mounts:
      - type: tmpfs
        target: /cache
        tmpfs_mode: "1700" # only readable to the owner
        tmpfs_size: "16G"

- name: Start container with block device read limit
  community.docker.docker_container:
    name: test
    image: ubuntu:18.04
    state: started
    device_read_bps:
      # Limit read rate for /dev/sda to 20 mebibytes per second
      - path: /dev/sda
        rate: 20M
    device_read_iops:
      # Limit read rate for /dev/sdb to 300 IO per second
      - path: /dev/sdb
        rate: 300

- name: Start container with GPUs
  community.docker.docker_container:
    name: test
    image: ubuntu:18.04
    state: started
    device_requests:
      - # Add some specific devices to this container
        device_ids:
          - '0'
          - 'GPU-3a23c669-1f69-c64e-cf85-44e9b07e7a2a'
      - # Add nVidia GPUs to this container
        driver: nvidia
        count: -1  # this means we want all
        capabilities:
          # We have one OR condition: 'gpu' AND 'utility'
          - - gpu
            - utility
          # See https://github.com/NVIDIA/nvidia-container-runtime#supported-driver-capabilities
          # for a list of capabilities supported by the nvidia driver

- name: Start container with storage options
  community.docker.docker_container:
    name: test
    image: ubuntu:18.04
    state: started
    storage_opts:
      # Limit root filesystem to 12 MB - note that this requires special storage backends
      # (https://fabianlee.org/2020/01/15/docker-use-overlay2-with-an-xfs-backing-filesystem-to-limit-rootfs-size/)
      size: 12m

Возвращаемые значения

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

Ключ

Описание

container

словарь

Факты, представляющие текущее состояние контейнера. Соответствует выводу docker inspection.

Пусто, если state=absent.

Если detach=false, будет содержать атрибут Output, содержащий любой вывод из запуска контейнера.

Возвращается: успех; или когда state=started и detach=false, и когда ожидание результата контейнера не завершилось с ошибкой

Пример: "{ \"AppArmorProfile\": \"\", \"Args\": [], \"Config\": { \"AttachStderr\": false, \"AttachStdin\": false, \"AttachStdout\": false, \"Cmd\": [ \"/usr/bin/supervisord\" ], \"Domainname\": \"\", \"Entrypoint\": null, \"Env\": [ \"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\" ], \"ExposedPorts\": { \"443/tcp\": {}, \"80/tcp\": {} }, \"Hostname\": \"8e47bf643eb9\", \"Image\": \"lnmp_nginx:v1\", \"Labels\": {}, \"OnBuild\": null, \"OpenStdin\": false, \"StdinOnce\": false, \"Tty\": false, \"User\": \"\", \"Volumes\": { \"/tmp/lnmp/nginx-sites/logs/\": {} }, ... }"

status

целое число

В случае запуска контейнера без отделения, это содержит код завершения процесса в контейнере.

До версии community.docker 1.1.0, это возвращалось только при ненулевом значении.

Возвращается: когда state=started и detach=false, и когда ожидание результата контейнера не завершилось с ошибкой

Пример: 0

Авторы

  • Cove Schneider (@cove)
  • Joshua Conner (@joshuaconner)
  • Pavel Antonov (@softzilla)
  • Thomas Steinbach (@ThomasSteinbach)
  • Philippe Jandot (@zfil)
  • Daan Oosterveld (@dusdanig)
  • Chris Houseknecht (@chouseknecht)
  • Kassian Sun (@kassiansun)
  • Felix Fontein (@felixfontein)

Ссылки на коллекцию

  • Система отслеживания ошибок
  • Репозиторий (исходные коды)
  • Задайте вопрос по 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_container_module.html

Spec-Zone.ru

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