通过ansible筛选docker容器的ip地址
我正在尝试从一个docker容器中获取ip地址,该容器带有可解析模块docker\u container\u info。 以下是我对如何将其从结果中排除的怀疑通过ansible筛选docker容器的ip地址,docker,ansible,dockerpy,Docker,Ansible,Dockerpy,我正在尝试从一个docker容器中获取ip地址,该容器带有可解析模块docker\u container\u info。 以下是我对如何将其从结果中排除的怀疑 - name: Get infos on container docker_container_info: name: nextcloud-db register: result_container - name: Dump grep matching interfaces from ansible_i
- name: Get infos on container
docker_container_info:
name: nextcloud-db
register: result_container
- name: Dump grep matching interfaces from ansible_interfaces
set_fact:
interfaces_list: "{{ result_container | select('match', '^IPAddress') }}"
- debug:
var: result_container
- debug:
var: interfaces_list
当我尝试这一点时,我得到了这个错误
TASK [debug] ******************************************************************************************************************************************************************************************************
ok: [localhost] => {
"interfaces_list": "<generator object select_or_reject at 0x7f2bb30d55a0>"
}
任务[调试]******************************************************************************************************************************************************************************************************
确定:[本地主机]=>{
“接口列表”:”
}
如何从这个结果中提取ip地址?
目标是创建一个变量,我可以稍后使用该变量转储数据库并将其导入另一个docker容器。以下内容对我适用:
- hosts: localhost
sudo: yes
tasks:
- name: Get infos on container
docker_container_info:
name: <some_name>
register: result
- debug:
var: result | json_query('container.NetworkSettings.[IPAddress]')
没有给我预期的结果。。。“接口列表”:”
PLAY [localhost] ***********************************************************************************************************************************************************
TASK [Gathering Facts] *****************************************************************************************************************************************************
ok: [localhost]
TASK [Get infos on container] **********************************************************************************************************************************************
ok: [localhost]
TASK [debug] ***************************************************************************************************************************************************************
ok: [localhost] => {
"result | json_query('container.NetworkSettings.[IPAddress]')": [
"172.17.0.2"
]
}
PLAY RECAP *****************************************************************************************************************************************************************
localhost : ok=3 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0