Ansible docker挂载多个端口

时间:2018-06-30 06:26:06

标签: docker ansible

可用版本

ansible --version
ansible 2.5.5

docker版本

docker --version
Docker version 18.03.1-ce, build 9ee9f40

我的例子

- name: start container
  docker_container:
    name: "tomcat-container"
    image: "tomcat-images"
    state: started
    ports:
      - "{{ item[0]}}:{{ item[1] }}"
    with_nested:
      - [8080,8080]
      - [8081,8081]

失败! => {“ msg”:“该任务包含带有未定义变量的选项。错误为:'item'未定义\ n \ n错误似乎出在'/ home / playbook / roles / ts-docker / tasks /main.yml':第81行第3列,但可能会\ n根据确切的语法问题而在文件中的其他位置。\ n \ n出现问题的行似乎是:\ n \ n \ n-名称:启动容器\ n ^这里\ n“}

...'item'未定义

如何解决安装多个端口的问题?

-_- ||英语不好,请原谅我

1 个答案:

答案 0 :(得分:0)

您只需要像这样减少with_nested行的缩进量:

- name: start container
  docker_container:
    name: "tomcat-container"
    image: "tomcat-images"
    state: started
    ports:
      - "{{ item[0]}}:{{ item[1] }}"
  with_nested:
    - [8080,8080]
    - [8081,8081]

with_nested是任务的选项,而您缩进的方式是模块(docker_container)的选项。