Skip to main content

Ubuntu

Ansible, Docker, and Ubuntu

By default Ubuntu/Debian docker images do not include python as part of the distribution. Before running Ansible tasks against containers, including fact gathering, python must be installed. The value of ansible_os_family can not be used because it’s not available until after facts have been gathered. - hosts: docker-containers gather_facts: False pre_tasks: - name: Check for apt (Debian family) raw: "test -e /usr/bin/apt" register: apt_installed ignore_errors: true - name: Install python for Ansible raw: "[ -e /usr/bin/python ] || (apt -y update && apt install -y python-minimal)" register: output when: apt_installed and apt_installed.rc == 0 changed_when: output.stdout != "" Answering a couple questions that the above might cause: