New in version 2.0.
The below requirements are needed on the host that executes this module.
docker-py
must be used. Otherwise, it is recommended to install the docker
Python module. Note that both modules should not be installed at the same time. Also note that when both modules are installed and one of them is uninstalled, the other might no longer function and a reinstall of it is required.Parameter | Choices/Defaults | Comments |
---|---|---|
api_version
-
|
Default: auto
|
The version of the Docker API running on the Docker Host. Defaults to the latest version of the API supported by docker-py.
If the value is not specified in the task, the value of environment variable
DOCKER_API_VERSION will be used instead. If the environment variable is not set, the default value will be used.aliases: docker_api_version |
cacert_path
-
|
Use a CA certificate when performing server verification by providing the path to a CA certificate file.
If the value is not specified in the task and the environment variable
DOCKER_CERT_PATH is set, the file ca.pem from the directory specified in the environment variable DOCKER_CERT_PATH will be used.aliases: tls_ca_cert |
|
cert_path
-
|
Path to the client's TLS certificate file.
If the value is not specified in the task and the environment variable
DOCKER_CERT_PATH is set, the file cert.pem from the directory specified in the environment variable DOCKER_CERT_PATH will be used.aliases: tls_client_cert |
|
config_path
-
|
Default: ~/.docker/config.json
|
Custom path to the Docker CLI configuration file.
aliases: self.config_path, dockercfg_path |
debug
boolean
|
|
Debug mode
|
docker_host
-
|
Default: unix://var/run/docker.sock
|
The URL or Unix socket path used to connect to the Docker API. To connect to a remote host, provide the TCP connection string. For example, 'tcp://192.0.2.23:2376'. If TLS is used to encrypt the connection, the module will automatically replace 'tcp' in the connection URL with 'https'.
If the value is not specified in the task, the value of environment variable
DOCKER_HOST will be used instead. If the environment variable is not set, the default value will be used.aliases: docker_url |
email
-
|
The email address for the registry account.
|
|
key_path
-
|
Path to the client's TLS key file.
If the value is not specified in the task and the environment variable
DOCKER_CERT_PATH is set, the file key.pem from the directory specified in the environment variable DOCKER_CERT_PATH will be used.aliases: tls_client_key |
|
password
-
/ required
|
The plaintext password for the registry account
|
|
reauthorize
boolean
|
|
Refresh existing authentication found in the configuration file.
aliases: reauth |
registry_url
-
|
Default: https://index.docker.io/v1/
|
The registry URL.
aliases: registry, url |
ssl_version
-
|
Provide a valid SSL version number. Default value determined by ssl.py module.
If the value is not specified in the task, the value of environment variable
DOCKER_SSL_VERSION will be used instead. |
|
state
-
added in 2.3 |
|
This controls the current state of the user.
present will login in a user, absent will log them out.To logout you only need the registry server, which defaults to DockerHub.
Before 2.1 you could ONLY log in.
docker does not support 'logout' with a custom config file.
|
timeout
-
|
Default: 60
|
The maximum amount of time in seconds to wait on a response from the API.
If the value is not specified in the task, the value of environment variable
DOCKER_TIMEOUT will be used instead. If the environment variable is not set, the default value will be used. |
tls
boolean
|
|
Secure the connection to the API by using TLS without verifying the authenticity of the Docker host server.
If the value is not specified in the task, the value of environment variable
DOCKER_TLS will be used instead. If the environment variable is not set, the default value will be used. |
tls_hostname
-
|
Default: localhost
|
When verifying the authenticity of the Docker Host server, provide the expected name of the server.
If the value is not specified in the task, the value of environment variable
DOCKER_TLS_HOSTNAME will be used instead. If the environment variable is not set, the default value will be used. |
tls_verify
boolean
|
|
Secure the connection to the API by using TLS and verifying the authenticity of the Docker host server.
If the value is not specified in the task, the value of environment variable
DOCKER_TLS_VERIFY will be used instead. If the environment variable is not set, the default value will be used. |
username
-
/ required
|
The username for the registry account
|
Note
docker[tls]
with pip.$HOME/docker/config.json
if the DOCKER_CONFIG
environment variable is not specified, and use $DOCKER_CONFIG/config.json
otherwise.- name: Log into DockerHub
docker_login:
username: docker
password: rekcod
- 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
config_path: /tmp/.mydockercfg
- name: Log out of DockerHub
docker_login:
state: absent
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
login_results
dictionary
|
when state='present' |
Results from the login.
Sample:
{'email': 'testuer@yahoo.com', 'serveraddress': 'localhost:5000', 'username': 'testuser'}
|
Hint
If you notice any issues in this documentation you can edit this document to improve it.