docker_login — Вход в реестр Docker.
Новое в версии 2.0.
Обзор
- Предоставляет функциональность, аналогичную команде «docker login».
- Авторизуется в реестре Docker и добавляет учетные данные в локальный файл конфигурации Docker. Добавление учетных данных в файлы конфигурации позволяет в дальнейшем подключаться к реестру с помощью таких инструментов, как модули Docker в Ansible, Docker CLI и docker-py, без необходимости ввода учетных данных.
- Запуск в режиме проверки выполнит аутентификацию без обновления файла конфигурации.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- docker-py >= 1.7.0
- Обратите внимание, что модуль Python docker-py был заменен на docker (см. здесь для получения подробностей). Для Python 2.6 необходимо использовать
docker-py. В противном случае рекомендуется установить модуль Pythondocker. Обратите внимание, что оба модуля не должны устанавливаться одновременно. Также обратите внимание, что при установке обоих модулей и удалении одного из них другой может перестать работать, и потребуется его повторная установка. - Docker API >= 1.20
- Только для возможности выхода (state=absent): утилита командной строки docker
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| api_version | Значение по умолчанию: "auto" | Версия API Docker, работающая на хосте Docker. По умолчанию используется последняя версия API, поддерживаемая docker-py. Если значение не указано в задаче, вместо него будет использовано значение переменной среды DOCKER_API_VERSION. Если переменная среды не задана, будет использовано значение по умолчанию.псевдонимы: docker_api_version |
| cacert_path | Используйте сертификат CA при проверке сервера, указав путь к файлу сертификата CA. Если значение не указано в задаче и переменная среды DOCKER_CERT_PATH задана, будет использован файл ca.pem из каталога, указанного в переменной среды DOCKER_CERT_PATH. псевдонимы: tls_ca_cert | |
| cert_path | Путь к файлу сертификата TLS клиента. Если значение не указано в задаче и переменная среды DOCKER_CERT_PATH задана, будет использован файл cert.pem из каталога, указанного в переменной среды DOCKER_CERT_PATH. псевдонимы: tls_client_cert | |
| config_path | Значение по умолчанию: "~/.docker/config.json" | Пользовательский путь к файлу конфигурации Docker CLI. псевдонимы: self.config_path, dockercfg_path |
| debug bool |
| Режим отладки |
| docker_host | Значение по умолчанию: "unix://var/run/docker.sock" | URL или путь к сокету Unix, используемый для подключения к API Docker. Для подключения к удаленному хосту укажите строку TCP-соединения. Например, 'tcp://192.0.2.23:2376'. Если для шифрования соединения используется TLS, модуль автоматически заменит 'tcp' в URL соединения на 'https'. Если значение не указано в задаче, вместо него будет использовано значение переменной среды DOCKER_HOST. Если переменная среды не задана, будет использовано значение по умолчанию.псевдонимы: docker_url |
| Адрес электронной почты для учетной записи реестра. ПРИМЕЧАНИЕ: частные реестры могут не потребовать этого, но Docker Hub требует его. | ||
| key_path | Путь к файлу ключа TLS клиента. Если значение не указано в задаче и переменная среды DOCKER_CERT_PATH задана, будет использован файл key.pem из каталога, указанного в переменной среды DOCKER_CERT_PATH. псевдонимы: tls_client_key | |
| password обязательно | Текстовый пароль для учетной записи реестра. | |
| reauthorize bool |
| Обновить существующую аутентификацию, найденную в файле конфигурации. псевдонимы: reauth |
| registry_url | Значение по умолчанию: "https://index.docker.io/v1/" | URL реестра. псевдонимы: registry, url |
| ssl_version | Укажите допустимый номер версии SSL. Значение по умолчанию определяется модулем ssl.py. Если значение не указано в задаче, вместо него будет использовано значение переменной среды DOCKER_SSL_VERSION. | |
| state (добавлен в 2.3) |
| Это управляет текущим состоянием пользователя. present выполнит вход пользователя, absent выполнит его выход.Для выхода вам нужен только сервер реестра, по умолчанию DockerHub. До версии 2.1 вы могли ТОЛЬКО войти. docker не поддерживает «выход» с пользовательским файлом конфигурации. |
| timeout | Значение по умолчанию: 60 | Максимальное время в секундах ожидания ответа от API. Если значение не указано в задаче, вместо него будет использовано значение переменной среды DOCKER_TIMEOUT. Если переменная среды не задана, будет использовано значение по умолчанию. |
| tls bool |
| Обеспечьте безопасность соединения с API с помощью TLS без проверки подлинности хоста Docker. Если значение не указано в задаче, вместо него будет использовано значение переменной среды DOCKER_TLS. Если переменная среды не задана, будет использовано значение по умолчанию. |
| tls_hostname | Значение по умолчанию: "localhost" | При проверке подлинности хоста Docker укажите ожидаемое имя сервера. Если значение не указано в задаче, вместо него будет использовано значение переменной среды DOCKER_TLS_HOSTNAME. Если переменная среды не задана, будет использовано значение по умолчанию. |
| tls_verify bool |
| Обеспечьте безопасность соединения с API с помощью TLS и проверьте подлинность хоста Docker. Если значение не указано в задаче, вместо него будет использовано значение переменной среды DOCKER_TLS_VERIFY. Если переменная среды не задана, будет использовано значение по умолчанию. |
| username обязательно | Имя пользователя для учетной записи реестра. |
Примечания
Примечание
- Подключайтесь к демону 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: Log into DockerHub
docker_login:
username: docker
password: rekcod
email: docker@docker.io
- name: Log into private registry and force re-authorization
docker_login:
registry: your.private.registry.io
username: yourself
password: secrets3
reauthorize: yes
- name: Log into DockerHub using a custom config file
docker_login:
username: docker
password: rekcod
email: docker@docker.io
config_path: /tmp/.mydockercfg
- name: Log out of DockerHub
docker_login:
state: absent
email: docker@docker.com
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| login_results dict | при state='present' | Результаты входа. Пример: {'email': 'testuer@yahoo.com', 'serveraddress': 'localhost:5000', 'username': 'testuser'} |
Статус
Этот модуль помечен как preview, что означает, что его интерфейс не гарантируется как обратной совместимости.
Техническое обслуживание
Этот модуль помечен как общественный, что означает, что он поддерживается сообществом Ansible. Дополнительную информацию см. в разделе Техническое обслуживание и поддержка модулей.
Список других модулей, также поддерживаемых сообществом Ansible, см. здесь.
Автор
- Olaf Kilian <olaf.kilian@symanex.com>
- Chris Houseknecht (@chouseknecht)
Подсказка
Если вы заметите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/docker_login_module.html