---

- name: create nginx-proxy volume folders
  file:
    name: "{{ services.nginx_proxy.volume_folder }}/{{ volume }}"
    state: directory
  loop:
    - conf
    - vhost
    - html
    - dhparam
    - certs
  loop_control:
    loop_var: volume

- name: nginx proxy container
  docker_container:
    name: nginx-proxy
    image: nginxproxy/nginx-proxy:{{ services.nginx_proxy.version }}
    restart_policy: always
    networks:
      - name: external_services
    published_ports:
      - "80:80"
      - "443:443"
    volumes:
      - "{{ services.nginx_proxy.volume_folder }}/conf:/etc/nginx/conf.d"
      - "{{ services.nginx_proxy.volume_folder }}/vhost:/etc/nginx/vhost.d"
      - "{{ services.nginx_proxy.volume_folder }}/html:/usr/share/nginx/html"
      - "{{ services.nginx_proxy.volume_folder }}/dhparam:/etc/nginx/dhparam"
      - "{{ services.nginx_proxy.volume_folder }}/certs:/etc/nginx/certs:ro"
      - /var/run/docker.sock:/tmp/docker.sock:ro

- name: nginx letsencrypt container
  docker_container:
    name: nginx-proxy-le
    image: nginxproxy/acme-companion:{{ services.nginx_acme_companion.version }}
    restart_policy: always
    volumes:
      - "{{ services.nginx_proxy.volume_folder }}/vhost:/etc/nginx/vhost.d"
      - "{{ services.nginx_proxy.volume_folder }}/html:/usr/share/nginx/html"
      - "{{ services.nginx_proxy.volume_folder }}/dhparam:/etc/nginx/dhparam:ro"
      - "{{ services.nginx_proxy.volume_folder }}/certs:/etc/nginx/certs"
      - /var/run/docker.sock:/var/run/docker.sock:ro
    env:
      NGINX_PROXY_CONTAINER: nginx-proxy
  when: letsencrypt_enabled