---
- name: Ensure docker container image '{{ nginx_container_image_reference }}' is {{ nginx_state }}
  community.docker.docker_image:
    name: "{{ nginx_container_image_reference }}"
    state: "{{ nginx_state }}"
    source: "{{ nginx_container_image_source }}"
    force_source: >-2
      {{ nginx_container_image_force_source
        | default(nginx_container_image_tag | default(false, true)) }}
  register: nginx_container_image_info
  until: nginx_container_image_info is success
  retries: 5
  delay: 3

- name: Ensure docker container '{{ nginx_container_name }}' is {{ nginx_container_state }}
  community.docker.docker_container:
    name: "{{ nginx_container_name }}"
    image: "{{ nginx_container_image_reference }}"
    env: "{{ nginx_container_env | default(omit, true) }}"
    user: "{{ nginx_container_user | default(omit, true) }}"
    ports: "{{ nginx_container_ports | default(omit, true) }}"
    labels: "{{ nginx_container_labels | default(omit, true) }}"
    volumes: "{{ nginx_container_volumes | default(omit, true) }}"
    etc_hosts: "{{ nginx_container_etc_hosts | default(omit, true) }}"
    networks: "{{ nginx_container_networks | default(omit, true) }}"
    purge_networks: "{{ nginx_container_purge_networks | default(omit, true) }}"
    restart_policy: "{{ nginx_container_restart_policy }}"
    state: "{{ nginx_container_state }}"