Ansible docker“集装箱提供”;获取网络id时出错“;
我正在从docker容器中的ansible控件运行ansible playbook。playbook应该创建另一个docker容器并将其连接到网桥网络。docker守护进程位于我启动ansible控件容器的主机上 我的剧本很简单,我可以回答主持人:Ansible docker“集装箱提供”;获取网络id时出错“;,docker,ansible,containers,Docker,Ansible,Containers,我正在从docker容器中的ansible控件运行ansible playbook。playbook应该创建另一个docker容器并将其连接到网桥网络。docker守护进程位于我启动ansible控件容器的主机上 我的剧本很简单,我可以回答主持人: - hosts: docker become: myuser connection: local gather_facts: no tasks: - nam
- hosts: docker
become: myuser
connection: local
gather_facts: no
tasks:
- name: Start Node container, connect to network
docker_container:
name: node1
hostname: node1
docker_host: tcp://172.18.0.1:2375
image: ubuntu-java
state: started
tty: yes
detach: yes
restart_policy: on-failure
networks:
- name: my-network
我得到了这个错误:
“msg”:“获取网络的网络id时出错-(”连接
已中止。“,错误(104,‘由对等方重置连接’)”
更新日期:2017年1月19日:
我现在可以这样做了。挑衅剧本如下所示:
- hosts: docker-host
vars_files:
- ~/resources/vars/docker-inst-setup.yml
tasks:
- name: debug check
debug:
msg: "container is {{ item.cont_name }}"
with_items: "{{ inst_types }}"
- name: Start container, connect to network
become: true
become_user: "{{ ansible_user_id }}"
docker_container:
name: "{{ item.cont_name }}"
hostname: "{{ item.cont_name }}"
image: gf-node:latest
state: started
tty: yes
detach: yes
restart_policy: on-failure
network_mode: bridge
volumes: /home/me/.ssh
volumes_from: ansible-master
register: ansible_docker_container
with_items: "{{ inst_types }}"
注:
- 首先,我必须在ansible master和我想提供的docker容器之间设置.ssh,这是我在DockerFile中做的李>
- docker主机在库存文件中定义
- 注册:ansible_docker_容器只是从docker_容器返回一些事实。它可以在以后的调试任务中打印出来,但没有多大帮助
inst_types:
- {cont_name: "gf-das", cont_count: 1}
- {cont_name: "gf-build-node", cont_count: 1}
这个过程很复杂,但我把它都写了出来。我希望这有帮助。对不起。我编辑了上面的剧本摘录,希望它现在更清晰。docker network ls的结果是什么?
myuser
是否对docker
命令具有sudo
权限?docker
组是否只包含127.0.0.1
?