Модуль 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. Если значение не указано в задаче, вместо него используется значение переменной среды По умолчанию: |
ca_path псевдонимы: ca_cert, tls_ca_cert, cacert_path путь | Для проверки сервера используйте сертификат центра сертификации, указав путь к файлу сертификата. Если значение не указано в задаче, а переменная среды Ранее этот параметр назывался |
client_cert псевдонимы: tls_client_cert, cert_path путь | Путь к файлу TLS-сертификата клиента. Если значение не указано в задаче, а переменная среды |
client_key псевдонимы: tls_client_key, key_path путь | Путь к файлу TLS-ключа клиента. Если значение не указано в задаче, а переменная среды |
config_path псевдонимы: dockercfg_path путь | Пользовательский путь к файлу конфигурации Docker CLI. По умолчанию: |
debug логическое значение | Режим отладки Варианты:
|
docker_host псевдонимы: docker_url строка | URL или путь к сокету Unix для подключения к Docker API. Для подключения к удалённому хосту укажите строку TCP-подключения. Например, Если значение не указано в задаче, вместо него используется значение переменной среды По умолчанию: |
password строка | Пароль учётной записи реестра в открытом виде. Обязателен, если |
reauthorize псевдонимы: reauth логическое значение | Обновить существующие данные аутентификации, найденные в файле конфигурации. Варианты:
|
registry_url псевдонимы: registry, url строка | URL реестра. По умолчанию: |
state строка | Задаёт текущее состояние пользователя. Для выхода достаточно указать сервер реестра; по умолчанию используется DockerHub. До версии 2.1 можно было выполнять ТОЛЬКО вход. Docker не поддерживает выход (logout) с пользовательским файлом конфигурации. Варианты:
|
timeout целое число | Максимальное время ожидания ответа от API в секундах. Если значение не указано в задаче, вместо него используется значение переменной среды По умолчанию: |
tls логическое значение | Защитить подключение к API с помощью TLS без проверки подлинности сервера хоста Docker. Обратите внимание: если для Если значение не указано в задаче, вместо него используется значение переменной среды Варианты:
|
tls_hostname строка | При проверке подлинности сервера хоста Docker укажите ожидаемое имя сервера. Если значение не указано в задаче, вместо него используется значение переменной среды Обратите внимание, что в старых версиях значением этого параметра по умолчанию было |
use_ssh_client логическое значение добавлено в community.docker 1.5.0 | Для подключений SSH использовать инструмент CLI Варианты:
|
username строка | Имя пользователя учётной записи реестра. Обязательно, если |
validate_certs псевдонимы: tls_verify логическое значение | Защитить подключение к API с помощью TLS и проверить подлинность сервера хоста Docker. Если значение не указано в задаче, вместо него используется значение переменной среды Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
action_group | Группы действий: community.docker.docker, docker | Используйте |
check_mode | Поддержка: полная | Может выполняться в |
diff_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 словарь | Результат входа. Возвращается: когда Пример: |
Ссылки на коллекцию
© 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