containers.podman.podman_image – Выгрузка изображений для использования podman
Примечание
Этот плагин входит в состав коллекции containers.podman (версия 1.4.1).
Для его установки используйте: ansible-galaxy collection install containers.podman.
Чтобы использовать его в книге задач, укажите: containers.podman.podman_image.
Описание
- Создание, выгрузка или загрузка изображений с помощью Podman.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| auth_file путь | Путь к файлу, содержащему учетные данные для авторизации на удаленном репозитории. Псевдонимы: authfile | ||
| build словарь | Аргументы, контролирующие сборку изображения. Псевдонимы: build_args, buildargs | ||
| annotation словарь | Словарь пар ключ=значение для добавления к изображению. Работает только с OCI-изображениями. Игнорируется для контейнеров Docker. | ||
| cache логическое |
| Использовать или нет кэшированные слои при сборке изображения | |
| extra_args строка | Дополнительные аргументы для передачи на сборку, если она выполняется. Не проверяет на новые аргументы сборки идемпотентно. | ||
| force_rm логическое |
| Всегда удалять промежуточные контейнеры после сборки, даже если сборка не удалась. | |
| format строка |
| Формат создаваемого изображения. | |
| rm логическое |
| Удалить промежуточные контейнеры после успешной сборки | |
| volume список / элементы=строка | Укажите несколько вариантов томов/монтирования, чтобы смонтировать один или несколько монтирований в контейнер. | ||
| ca_cert_dir путь | Путь к каталогу, содержащему сертификаты и ключи TLS. | ||
| executable строка | По умолчанию: "podman" | Путь к исполняемому файлу podman, если он не находится в $PATH на машине, на которой выполняется podman. | |
| force логическое |
| Принудительно выполнить загрузку или загрузку изображения. При сборке, принудительно выполнить сборку, даже если изображение уже существует. | |
| name строка / обязательный | Имя изображения для выгрузки, загрузки или удаления. Может содержать тег в формате image:tag. | ||
| password строка | Пароль для аутентификации на удаленных репозиториях. | ||
| path строка | Путь к каталогу, содержащему файл сборки. | ||
| pull логическое |
| Выполнять или нет выгрузку изображения. | |
| push логическое |
| Выполнять или нет загрузку изображения. | |
| push_args словарь | Аргументы, контролирующие загрузку изображений. | ||
| compress логическое |
| Сжимать слои образа tarball при загрузке в каталог с помощью транспорта 'dir'. | |
| dest строка | Путь или URL, куда будет загружено изображение. Псевдонимы: destination | ||
| format строка |
| Тип манифеста для использования при загрузке изображения с помощью транспорта 'dir' (по умолчанию — тип манифеста источника). | |
| remove_signatures логическое |
| Отбросить любые существующие подписи в изображении | |
| sign_by строка | Путь к файлу ключа для подписи изображения. | ||
| transport строка |
| Транспорт для использования при загрузке изображения. Если транспорт не задан, будет выполнена попытка загрузки в удаленный репозиторий. | |
| state строка |
| Изображение должно быть присутствующим, отсутствующим или созданным. | |
| tag строка | По умолчанию: "последний" | Тег изображения для выгрузки, загрузки или удаления. | |
| username строка | Имя пользователя для аутентификации на удаленных репозиториях. | ||
| validate_certs логическое |
| Требовать HTTPS и проверять сертификаты при загрузке или загрузке. Также используется во время сборки, если требуется загрузка или загрузка. Псевдонимы: tlsverify, tls_verify | |
Примеры
- name: Pull an image
container.podman.podman_image:
name: quay.io/bitnami/wildfly
- name: Remove an image
container.podman.podman_image:
name: quay.io/bitnami/wildfly
state: absent
- name: Pull a specific version of an image
container.podman.podman_image:
name: redis
tag: 4
- name: Build a basic OCI image
container.podman.podman_image:
name: nginx
path: /path/to/build/dir
- name: Build a basic OCI image with advanced parameters
container.podman.podman_image:
name: nginx
path: /path/to/build/dir
build:
cache: no
force_rm: yes
format: oci
annotation:
app: nginx
function: proxy
info: Load balancer for my cool app
- name: Build a Docker formatted image
container.podman.podman_image:
name: nginx
path: /path/to/build/dir
build:
format: docker
- name: Build and push an image using existing credentials
container.podman.podman_image:
name: nginx
path: /path/to/build/dir
push: yes
push_args:
dest: quay.io/acme
- name: Build and push an image using an auth file
container.podman.podman_image:
name: nginx
push: yes
auth_file: /etc/containers/auth.json
push_args:
dest: quay.io/acme
- name: Build and push an image using username and password
container.podman.podman_image:
name: nginx
push: yes
username: bugs
password: "{{ vault_registry_password }}"
push_args:
dest: quay.io/acme
- name: Build and push an image to multiple registries
container.podman.podman_image:
name: "{{ item }}"
path: /path/to/build/dir
push: yes
auth_file: /etc/containers/auth.json
loop:
- quay.io/acme/nginx
- docker.io/acme/nginx
- name: Build and push an image to multiple registries with separate parameters
container.podman.podman_image:
name: "{{ item.name }}"
tag: "{{ item.tag }}"
path: /path/to/build/dir
push: yes
auth_file: /etc/containers/auth.json
push_args:
dest: "{{ item.dest }}"
loop:
- name: nginx
tag: 4
dest: docker.io/acme
- name: nginx
tag: 3
dest: docker.io/acme
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое | Описание |
|---|---|---|
| image словарь | успех | Результаты проверки изображения для изображения, которое было загружено, загружено или собрано. Пример: [{'Annotations': {}, 'Architecture': 'amd64', 'Author': '', 'Comment': 'от Bitnami с любовью', 'ContainerConfig': {'Cmd': ['/run.sh'], 'Entrypoint': ['/app-entrypoint.sh'], 'Env': ['PATH=/opt/bitnami/java/bin:/opt/bitnami/wildfly/bin:/opt/bitnami/nami/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin', 'IMAGE_OS=debian-9', 'NAMI_VERSION=1.0.0-1', 'GPG_KEY_SERVERS_LIST=ha.pool.sks-keyservers.net', 'TINI_VERSION=v0.13.2', 'TINI_GPG_KEY=595E85A6B1B4779EA4DAAEC70B588DFF0527A9B7', 'GOSU_VERSION=1.10', 'GOSU_GPG_KEY=B42F6819007F00F88E364FD4036A9C25BF357DD4', 'BITNAMI_IMAGE_VERSION=16.0.0-debian-9-r27', 'BITNAMI_PKG_CHMOD=-R g+rwX', 'BITNAMI_PKG_EXTRA_DIRS=/home/wildfly', 'HOME=/', 'BITNAMI_APP_NAME=wildfly', 'NAMI_PREFIX=/.nami', 'WILDFLY_HOME=/home/wildfly', 'WILDFLY_JAVA_HOME=', 'WILDFLY_JAVA_OPTS=', 'WILDFLY_MANAGEMENT_HTTP_PORT_NUMBER=9990', 'WILDFLY_PASSWORD=bitnami', 'WILDFLY_PUBLIC_CONSOLE=true', 'WILDFLY_SERVER_AJP_PORT_NUMBER=8009', 'WILDFLY_SERVER_HTTP_PORT_NUMBER=8080', 'WILDFLY_SERVER_INTERFACE=0.0.0.0', 'WILDFLY_USERNAME=user', 'WILDFLY_WILDFLY_HOME=/home/wildfly', 'WILDFLY_WILDFLY_OPTS=-Dwildfly.as.deployment.ondemand=false'], 'ExposedPorts': {'8080/tcp': {}, '9990/tcp': {}}, 'Labels': {'maintainer': 'Bitnami <containers@bitnami.com>'}, 'User': '1001'}, 'Created': '2019-04-10T05:48:03.553887623Z', 'Digest': 'sha256:5a8ab28e314c2222de3feaf6dac94a0436a37fc08979d2722c99d2bef2619a9b', 'GraphDriver': {'Data': {'LowerDir': '/var/lib/containers/storage/overlay/142c1beadf1bb09fbd929465ec98c9dca3256638220450efb4214727d0d0680e/diff:/var/lib/containers/s', 'MergedDir': '/var/lib/containers/storage/overlay/9aa10191f5bddb59e28508e721fdeb43505e5b395845fa99723ed787878dbfea/merged', 'UpperDir': '/var/lib/containers/storage/overlay/9aa10191f5bddb59e28508e721fdeb43505e5b395845fa99723ed787878dbfea/diff', 'WorkDir': '/var/lib/containers/storage/overlay/9aa10191f5bddb59e28508e721fdeb43505e5b395845fa99723ed787878dbfea/work'}, 'Name': 'overlay'}, 'History': [{'comment': 'от Bitnami с любовью', 'created': '2019-04-09T22:27:40.659377677Z'}, {'created': '2019-04-09T22:38:53.86336555Z', 'created_by': '/bin/sh -c #(nop) LABEL maintainer=Bitnami <containers@bitnami.com>', 'empty_layer': True}, {'created': '2019-04-09T22:38:54.022778765Z', 'created_by': '/bin/sh -c #(nop) ENV IMAGE_OS=debian-9', 'empty_layer': True}], 'Id': 'ace34da54e4af2145e1ad277005adb235a214e4dfe1114c2db9ab460b840f785', 'Labels': {'maintainer': 'Bitnami <containers@bitnami.com>'}, 'ManifestType': 'application/vnd.docker.distribution.manifest.v1+prettyjws', 'Os': 'linux', 'Parent': '', 'RepoDigests': ['quay.io/bitnami/wildfly@sha256:5a8ab28e314c2222de3feaf6dac94a0436a37fc08979d2722c99d2bef2619a9b'], 'RepoTags': ['quay.io/bitnami/wildfly:последний'], 'RootFS': {'Layers': ['', '', '', '', '', '', '', '', '', '', '', ''], 'Type': 'слои'}, 'Size': 466180019, 'User': '1001', 'Version': '18.09.3', 'VirtualSize': 466180019}] |
Авторы
- Sam Doran (@samdoran)
© 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/containers/podman/podman_image_module.html