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 | нет | Используйте сертификат CA при проверке подлинности сервера, указав путь к файлу сертификата CA. псевдонимы: tls_ca_cert | |||||||||||||||||||||||||||
| cert_path | нет | Путь к файлу TLS-сертификата клиента. псевдонимы: tls_client_cert | |||||||||||||||||||||||||||
| container_limits (добавлен в 2.1)
| нет | Словарь ограничений, применяемых к каждому контейнеру, созданному процессом сборки. |
|||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
| 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 | нет | Путь к файлу закрытого ключа клиента TLS. псевдонимы: tls_client_key | |||||||||||||||||||||||||||
| load_path (добавлен в 2.2)
| нет | Используется со значением present для загрузки образа из файла .tar. | |||||||||||||||||||||||||||
| name | да | Имя образа. Формат имени будет одним из: имя, репозиторий/имя, имя_регистра_сервера:порт/имя. При публикации или скачивании образа имя может необязательно включать тег, добавив ':имя_тега'. | |||||||||||||||||||||||||||
| nocache | нет |
| Не использовать кэш при построении образа. | ||||||||||||||||||||||||||
| path | нет | Используется со значением 'present' для построения образа. Будет путем к каталогу, содержащему контекст и Dockerfile для построения образа. псевдонимы: build_path | |||||||||||||||||||||||||||
| pull (добавлен в 2.1)
| нет | True |
| При построении образа загружает любые обновления FROM образа в Dockerfile. | |||||||||||||||||||||||||
| push (добавлен в 2.2)
| нет |
| Опубликовать образ в репозиторий. Укажите репозиторий как часть параметра имя или repository. | ||||||||||||||||||||||||||
| repository (добавлен в 2.1)
| нет | Полный путь к репозиторию. Используется со значением present для добавления тега к образу в репозиторий. Ожидается формат repository:tag. Если тег не указан, будет использоваться значение параметра tag или latest. | |||||||||||||||||||||||||||
| rm (добавлен в 2.1)
| нет | True |
| Удалить промежуточные контейнеры после сборки. | |||||||||||||||||||||||||
| ssl_version | нет | 1.0 | Укажите допустимое значение версии SSL. Значение по умолчанию определяется docker-py, в настоящее время 1.0. | ||||||||||||||||||||||||||
| state | нет | present |
| Делает утверждения о состоянии образа. При значении absent образ будет удалён. Используйте параметр force для удаления тега и удаления всех образов, соответствующих указанному имени.При значении present проверяет, существует ли образ с указанным именем и тегом. Если образ не найден или используется параметр force, образ будет загружен, построен или загружен. По умолчанию образ загружается из Docker Hub. Для построения образа укажите значение пути к каталогу, содержащему контекст и Dockerfile. Для загрузки образа укажите load_path, чтобы указать путь к файлу архива. Для добавления тега к образу в репозиторий укажите путь к репозиторию. Если имя содержит путь к репозиторию, оно будет опубликовано.ПРИМЕЧАНИЕ: build УСТЕРЕЛ и будет удалён в выпуске 2.3. Указание build будет вести себя так же, как present. | |||||||||||||||||||||||||
| tag | нет | latest | Используется для выбора образа при скачивании. Будет добавлен к образу при публикации, добавлении тега или построении. По умолчанию — latest. Если формат параметра 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. | ||||||||||||||||||||||||||
Примеры
- 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 | Результаты проверки образа для затронутого образа. | успех | словарь | {} |
Примечания
Примечание
- Подключитесь к демону 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/ для получения дополнительной информации.
Статус
Этот модуль помечен как превью, что означает, что он не гарантирует обратной совместимости интерфейса.
Для помощи в разработке модулей, если вы заинтересованы, пожалуйста, ознакомьтесь с Информация о сообществе и участие, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/docker_image_module.html