Spec-Zone.ru › Ansible 2.5

docker_image - Управление образами Docker.

Новое в версии 1.5.

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

Обзор

  • Создаёт, загружает или подтягивает образ, делая его доступным для создания контейнеров. Также поддерживает маркировку образа в репозитории и архивирование образа в файл .tar.

Требования

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

  • python >= 2.6
  • docker-py >= 1.7.0
  • Docker API >= 1.20

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
api_version Значение по умолчанию:
значение, предоставляемое docker-py
Версия Docker API, работающая на Docker хосте. По умолчанию используется последняя версия API, поддерживаемая docker-py.

псевдонимы: docker_api_version
archive_path
(добавлено в 2.1)
Используется со статусом present для архивирования образа в файл .tar.
buildargs
(добавлено в 2.2)
Предоставляет словарь key:value аргументов сборки, которые сопоставляются с директивой Dockerfile ARG.
Docker ожидает, что значение будет строкой. Для удобства любые значения, отличные от строки, будут преобразованы в строки.
Требуется Docker API >= 1.21 и docker-py >= 1.7.0.
cacert_path Значение по умолчанию:
None
Используйте сертификат CA при проверке подлинности сервера, указав путь к файлу сертификата CA.

псевдонимы: tls_ca_cert
cert_path Значение по умолчанию:
None
Путь к файлу TLS-сертификата клиента.

псевдонимы: tls_client_cert
container_limits
(добавлено в 2.1)
Словарь ограничений, применяемых к каждому контейнеру, созданному в процессе сборки.
memswap
Общий объём памяти (память + своп), -1 для отключения свопа.
cpushares
Доли ЦП (относительный вес).
cpusetcpus
ЦП, в которых разрешено выполнение, например, "0-3", "0,1".
memory
Установите лимит памяти для сборки.
docker_host Значение по умолчанию:
unix://var/run/docker.sock
URL или путь к Unix-сокету, используемые для подключения к Docker API. Для подключения к удалённому хосту укажите строку TCP-соединения. Например, 'tcp://192.0.2.23:2376'. Если для шифрования соединения используется TLS, модуль автоматически заменит 'tcp' в URL соединения на 'https'.

псевдонимы: docker_url
dockerfile
(добавлено в 2.0)
Значение по умолчанию:
Dockerfile
Используется со статусом present для предоставления альтернативного имени Dockerfile для использования при сборке образа.
force
(добавлено в 2.1)
    Варианты:
  • нет ←
  • да
Используется со статусом отсутствует для снятия тегов и удаления всех образов, соответствующих указанному имени. Используется со статусом present для сборки, загрузки или подтягивания образа, когда образ уже существует.
http_timeout
(добавлено в 2.1)
Таймаут для HTTP-запросов во время операции сборки образа. Укажите положительное целое число для количества секунд.
key_path Значение по умолчанию:
None
Путь к файлу TLS-ключа клиента.

псевдонимы: tls_client_key
load_path
(добавлено в 2.2)
Используется со статусом present для загрузки образа из файла .tar.
name
обязательно
Имя образа. Формат имени: имя, репозиторий/имя, сервер_реестра:порт/имя. При публикации или подтягивании образа имя может необязательно включать тег, добавляя ':имя_тега'.
nocache
    Варианты:
  • нет ←
  • да
Не использовать кэш при сборке образа.
path
Используется со статусом 'present' для сборки образа. Будет путём к каталогу, содержащему контекст и Dockerfile для сборки образа.

псевдонимы: build_path
pull
(добавлено в 2.1)
    Варианты:
  • нет
  • да ←
При сборке образа скачивает все обновления для образа FROM в Dockerfile.
push
(добавлено в 2.2)
    Варианты:
  • нет ←
  • да
Опубликовать образ в репозиторий. Укажите репозиторий как часть параметра имя или репозиторий.
repository
(добавлено в 2.1)
Полный путь к репозиторию. Используется со статусом present для маркировки образа в репозиторий. Ожидается формат репозиторий:тег. Если тег не указан, будет использовано значение параметра tag или последний.
rm
(добавлено в 2.1)
    Варианты:
  • нет
  • да ←
Удалить промежуточные контейнеры после сборки.
ssl_version Значение по умолчанию:
1.0
Укажите допустимый номер версии SSL. Значение по умолчанию определяется docker-py, в настоящее время 1.0.
state
    Варианты:
  • отсутствует
  • есть ←
  • сборка
Осуществляйте утверждения относительно состояния образа.
При статусе absent образ будет удалён. Используйте опцию force для снятия тегов и удаления всех образов, соответствующих указанному имени.
При статусе present проверьте, существует ли образ с указанным именем и тегом. Если образ не найден или используется опция force, образ будет либо подтянут, собран или загружен. По умолчанию образ будет подтянут из Docker Hub. Для сборки образа укажите значение пути к каталогу, содержащему контекст и Dockerfile. Для загрузки образа укажите load_path, чтобы указать путь к файлу архива. Для маркировки образа в репозитории укажите путь к репозиторию. Если имя содержит путь к репозиторию, он будет опубликован.
ПРИМЕЧАНИЕ: build УСТЕРЕВШЕ и будет удалён в релизе 2.3. Указание build будет эквивалентно present.
tag Значение по умолчанию:
последний
Используется для выбора образа при подтягивании. Будет добавлен к образу при публикации, маркировке или сборке. По умолчанию используется последний.
Если формат параметра name — имя:тег, то значение тега из параметра name будет иметь приоритет.
timeout Значение по умолчанию:
60
Максимальное время в секундах ожидания ответа от API.
tls Значение по умолчанию:
нет
Защитите соединение с API с помощью TLS без проверки подлинности Docker хост-сервера.
tls_hostname Значение по умолчанию:
localhost
При проверке подлинности Docker хост-сервера укажите ожидаемое имя сервера.
tls_verify Значение по умолчанию:
нет
Защитите соединение с API с помощью TLS и проверьте подлинность Docker хост-сервера.
use_tls
(добавлено в 2.0)
    Варианты:
  • нет ←
  • шифрование
  • проверка
Значение по умолчанию:
нет
УСТЕРЕВШЕ. Используется ли TLS для подключения к Docker серверу. Установите в no, когда TLS не будет использоваться. Установите в encrypt, чтобы использовать TLS. И установите в verify, чтобы использовать TLS и проверить, что сертификат сервера действителен для сервера. ПРИМЕЧАНИЕ: Если вы укажете этот параметр, он установит значение параметров tls или 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: pull an image
  docker_image:
    name: pacur/centos-7

- name: Tag and push to docker hub
  docker_image:
    name: pacur/centos-7
    repository: dcoppenhagan/myimage
    tag: 7.0
    push: yes

- name: Tag and push to local registry
  docker_image:
     name: centos
     repository: localhost:5000/centos
     tag: 7
     push: yes

- name: Remove image
  docker_image:
    state: absent
    name: registry.ansible.com/chouseknecht/sinatra
    tag: v1

- name: Build an image and push it to a private repo
  docker_image:
    path: ./sinatra
    name: registry.ansible.com/chouseknecht/sinatra
    tag: v1
    push: yes

- name: Archive image
  docker_image:
    name: registry.ansible.com/chouseknecht/sinatra
    tag: v1
    archive_path: my_sinatra.tar

- name: Load image from archive and push to a private registry
  docker_image:
    name: localhost:5000/myimages/sinatra
    tag: v1
    push: yes
    load_path: my_sinatra.tar

- name: Build image and with buildargs
  docker_image:
     path: /path/to/build/dir
     name: myimage
     buildargs:
       log_volume: /var/log/myapp
       listen_port: 8080

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

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

Ключ Возвращённое значение Описание
image
dict
success
Результаты проверки изображения для затронутого изображения.



Статус

Этот модуль помечен как превью, что означает, что он не гарантирует обратную совместимость.

Автор

  • Павел Антонов (@softzilla)
  • Крис Хаускнект (@chouseknecht)
  • Джеймс Таннер (@jctanner)

Подсказка

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

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/docker_image_module.html

Spec-Zone.ru

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