Spec-Zone.ru › Ansible

Модуль community.docker.docker_login — вход в реестр Docker

Примечание

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

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

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

Чтобы использовать его в плейбуке, укажите: community.docker.docker_login.

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

Краткое описание

  • Предоставляет функциональность, аналогичную команде docker login.
  • Выполняет аутентификацию в реестре Docker и сохраняет учётные данные в локальном файле конфигурации Docker либо в хранилище учётных данных, связанном с реестром. Сохранение учётных данных в файлах конфигурации или хранилище позволяет в дальнейшем подключаться к реестру с помощью таких инструментов, как модули Docker для Ansible, Docker CLI и Docker SDK for Python, не указывая учётные данные повторно.
  • В режиме проверки выполняется аутентификация без обновления файла конфигурации.

Требования

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

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

Параметры

Параметр

Комментарии

api_version

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

строка

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

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

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

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

ca_path

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

путь

Для проверки сервера используйте сертификат центра сертификации, указав путь к файлу сертификата.

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

Ранее этот параметр назывался ca_cert; в community.docker 3.6.0 он был переименован в ca_path. Прежнее имя добавлено в качестве псевдонима и по-прежнему доступно.

client_cert

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

путь

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

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

client_key

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

путь

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

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

config_path

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

путь

Пользовательский путь к файлу конфигурации Docker CLI.

По умолчанию: "~/.docker/config.json"

debug

логическое значение

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

Варианты:

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

docker_host

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

строка

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

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

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

password

строка

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

Обязателен, если state=present.

reauthorize

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

логическое значение

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

Варианты:

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

registry_url

псевдонимы: registry, url

строка

URL реестра.

По умолчанию: "https://index.docker.io/v1/"

state

строка

Задаёт текущее состояние пользователя. present выполняет вход пользователя, а absent — выход.

Для выхода достаточно указать сервер реестра; по умолчанию используется DockerHub.

До версии 2.1 можно было выполнять ТОЛЬКО вход.

Docker не поддерживает выход (logout) с пользовательским файлом конфигурации.

Варианты:

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

timeout

целое число

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

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

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

tls

логическое значение

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

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

Варианты:

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

tls_hostname

строка

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

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

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

use_ssh_client

логическое значение

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

Для подключений SSH использовать инструмент CLI ssh вместо paramiko.

Варианты:

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

username

строка

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

Обязательно, если state=present.

validate_certs

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

логическое значение

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

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

Варианты:

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

Атрибуты

Атрибут

Поддержка

Описание

action_group

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

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

check_mode

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

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

diff_mode

Поддержка: отсутствует

В режиме сравнения будут возвращены сведения об изменениях (или о возможных изменениях в check_mode).

idempotent

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

При повторном запуске с теми же аргументами вне режима проверки второй вызов сообщает об отсутствии изменений.

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

Примечания

Примечание

  • Подключайтесь к демону 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 for Python для взаимодействия с демоном Docker. В нём используется код, производный от Docker SDK for Python и включённый в эту коллекцию.

Примеры

---
- name: Log into DockerHub
  community.docker.docker_login:
    username: docker
    password: rekcod

- name: Log into private registry and force re-authorization
  community.docker.docker_login:
    registry_url: your.private.registry.io
    username: yourself
    password: secrets3
    reauthorize: true

- name: Log into DockerHub using a custom config file
  community.docker.docker_login:
    username: docker
    password: rekcod
    config_path: /tmp/.mydockercfg

- name: Log out of DockerHub
  community.docker.docker_login:
    state: absent

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

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

Ключ

Описание

login_result

словарь

Результат входа.

Возвращается: когда state=present

Пример: {"serveraddress": "localhost:5000", "username": "testuser"}

Авторы

  • Olaf Kilian (@olsaki)
  • Chris Houseknecht (@chouseknecht)

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

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

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

Spec-Zone.ru

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