Install Docker on a remote server with Ansible on Ubuntu

sudo apt-get install software-properties-common
sudo apt-add-repository ppa:ansible/ansible
sudo apt-get install -y ansible
mkdir ./ansible
touch ./ansible/inventory
touch ./ansible/main.yaml
touch ./ansible/vars.yaml
[beta]
beta.thematrix.dev

[production]
www.thematrix.dev
./ansible/inventory
user: ubuntu

requried_packages:
  - ca-certificates
  - curl
  - gnupg
  - lsb-release

docker_engines:
  - docker-ce
  - docker-ce-cli
  - containerd.io
  - docker-compose-plugin
./ansible/vars.yaml
---
- hosts: beta
  become: yes
  vars_files:
    - vars.yaml

  tasks:
    - name: Install Docker prerequisite
      apt:
        name: "{{ item }}"
        state: latest
        update_cache: true
      loop: "{{ requried_packages }}"
    - name: Add Docker's official GPG key
      apt_key:
        url: https://download.docker.com/linux/ubuntu/gpg
        state: present
    - name: Add Docker repository
      apt_repository:
        repo: deb https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable
        state: present
    - name: Install Docker
      apt:
        name: "{{ item }}"
        state: latest
        update_cache: true
      loop: "{{ docker_engines }}"
    - name: Add user to Docker group
      user:
        name: "{{ user }}"
        group: docker
./ansible/main.yaml
ansible-playbook -i inventory main.yaml
PLAY [beta] ************************************************************************************************************************

TASK [Gathering Facts] *************************************************************************************************************
ok: [beta.thematrix.dev]

TASK [Install Docker prerequisite] *************************************************************************************************
ok: [beta.thematrix.dev] => (item=ca-certificates)
ok: [beta.thematrix.dev] => (item=curl)
ok: [beta.thematrix.dev] => (item=gnupg)
ok: [beta.thematrix.dev] => (item=lsb-release)

TASK [Add Docker's official GPG key] ***********************************************************************************************
ok: [beta.thematrix.dev]

TASK [Add Docker repository] *******************************************************************************************************
ok: [beta.thematrix.dev]

TASK [Install Docker] **************************************************************************************************************
ok: [beta.thematrix.dev] => (item=docker-ce)
ok: [beta.thematrix.dev] => (item=docker-ce-cli)
ok: [beta.thematrix.dev] => (item=containerd.io)
ok: [beta.thematrix.dev] => (item=docker-compose-plugin)

TASK [Add user to Docker group] ****************************************************************************************************
changed: [beta.thematrix.dev]

PLAY RECAP *************************************************************************************************************************
beta.thematrix.dev   : ok=6    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0