--- - name: Install aptitude using apt apt: name=aptitude state=latest update_cache=yes force_apt_get=yes - name: Install required system packages apt: name={{ item }} state=latest update_cache=yes loop: [ 'apt-transport-https', 'ca-certificates', 'curl', 'software-properties-common', 'python3-pip', 'virtualenv', 'python3-setuptools', 'python3-pkg-resources'] - name: creating alias shell: echo alias pip=pip3 >> ~/.bashrc - name: Add Docker GPG apt Key apt_key: url: https://download.docker.com/linux/debian/gpg state: present - name: Add Docker Repository apt_repository: repo: deb [arch=amd64] https://download.docker.com/linux/debian bookworm stable state: present - name: Update apt and install docker-ce apt: name: "{{item}}" state: present update_cache: yes with_items: - docker-ce - docker-ce-cli - containerd.io - name: Create docker group group: name: "docker" state: present - name: Add docker user with specific attributes user: name: docker system: yes createhome: yes home: /home/docker shell: /usr/sbin/nologin - name: Adding user docker to docker group user: name: docker groups: "docker" append: "yes" - name: Adding user ansible to docker group user: name: ansible groups: "docker" append: "yes" - name: Get Python 3.X version ansible.builtin.command: python3 --version register: pyver changed_when: false failed_when: pyver.rc != 0 - name: Remove Python 3.X EXTERNALLY-MANAGED file ansible.builtin.file: state: absent path: "/usr/lib/python{{ pyver.stdout.split()[1] | regex_search('([0-9]+\\.[0-9]+)') }}/EXTERNALLY-MANAGED" when: pyver.stdout | regex_search('3\.[0-9]+') - name: Install and upgrade pip pip: name: pip extra_args: --upgrade executable: pip3 - name: Install setuptools Module for Python pip: name: setuptools - name: Install Docker Module for Python pip: name: docker - name: Install requests for Python pip: name: requests version: 2.32.3 - name: Create /opt/containers directory file: path: /opt/containers state: directory owner: docker group: docker mode: '0750' # - name: Install Docker compose for Python # pip: # name: docker-compose