--- - include_tasks: setup-RedHat.yml when: ansible_os_family == 'RedHat' - include_tasks: setup-Debian.yml when: ansible_os_family == 'Debian' - name: Install Docker. package: name: "{{ docker_package }}" state: "{{ docker_package_state }}" notify: restart docker ignore_errors: "{{ ansible_check_mode }}" - name: Ensure /etc/docker/ directory exists. file: path: /etc/docker state: directory mode: 0755 when: docker_daemon_options.keys() | length > 0 - name: Configure Docker daemon options. copy: content: "{{ docker_daemon_options | to_nice_json }}" dest: /etc/docker/daemon.json mode: 0644 when: docker_daemon_options.keys() | length > 0 notify: restart docker - name: Ensure Docker is started and enabled at boot. service: name: docker state: "{{ docker_service_state }}" enabled: "{{ docker_service_enabled }}" ignore_errors: "{{ ansible_check_mode }}" - name: Ensure handlers are notified now to avoid firewall conflicts. meta: flush_handlers - include_tasks: docker-users.yml when: docker_users | length > 0 - name: Install pip3. package: name: python3-pip - name: Update pip3. pip: name: pip extra_args: --upgrade vars: ansible_python_interpreter: /usr/bin/python3 - name: Install docker pips. pip: name: - docker - docker-api vars: ansible_python_interpreter: /usr/bin/python3