containers.podman.podman_logout 模块 – 使用 Podman 注销容器注册表
注意
此模块是 containers.podman 集合 (版本 1.16.2) 的一部分。
如果您使用的是 ansible
包,则可能已经安装了此集合。它不包含在 ansible-core
中。要检查它是否已安装,请运行 ansible-galaxy collection list
。
要安装它,请使用:ansible-galaxy collection install containers.podman
。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求。
要在剧本中使用它,请指定:containers.podman.podman_logout
。
概要
通过删除 `auth.json` 文件中存储的缓存凭据,使用 podman logout 命令注销容器注册表服务器。如果未指定注册表,则将使用 `registries.conf` 中 `[registries.search]` 下的第一个注册表。用户可以通过设置 `authfile` 标志来覆盖身份验证文件的路径。使用的默认路径是 `${XDG_RUNTIME_DIR}/containers/auth.json`。可以通过设置 `all` 标志来删除所有缓存的凭据。警告 - 如果在默认的 `authfile` 中找不到凭据,podman 将使用 `${HOME}/.docker/config.json` 中的凭据进行身份验证。但是,logout 命令只会删除指定 `authfile` 中的凭据。
要求
在执行此模块的主机上需要以下要求。
主机上安装了 Podman
参数
参数 |
注释 |
---|---|
删除 auth 文件中所有注册表的缓存凭据。 选项
|
|
身份验证文件的路径。默认为 ``${XDG_RUNTIME_DIR}/containers/auth.json`` 您也可以通过设置 ``REGISTRY_AUTH_FILE`` 环境变量来覆盖身份验证文件的默认路径。 ``export REGISTRY_AUTH_FILE=path`` |
|
如果 默认值: |
|
除非显式指定相应的 `authfile`,否则使用其他工具(例如 `docker login`)创建的凭据不会被删除。由于 podman 默认情况下也使用这些文件中的现有凭据(例如 docker 的 `${HOME}/.docker/config.json`),如果任何 `authfile` 中指定的注册表存在 docker 登录信息且被 podman 使用,则模块执行将失败。可以通过将 `ignore_docker_credentials` 设置为 `true` 来忽略此问题 - 凭据将被保留,并且 `changed` 将为 false。此选项不能与 `all` 一起使用,因为在这种情况下,podman 将不会检查由其他工具创建的现有 `authfiles`。 选项
|
|
注册表服务器。如果未指定注册表,则将使用 `registries.conf` 中 `[registries.search]` 下的第一个注册表。 |
示例
- name: Log out of default registry
podman_logout:
- name: Log out of quay.io
podman_logout:
registry: quay.io
- name: Log out of all registries in auth file
podman_logout:
all: true
- name: Log out of all registries in specified auth file
podman_logout:
authfile: $HOME/.docker/config.json
all: true