--- # Docker playbook for VMs that need containerization # # Usage: ansible-playbook -i inventory.ini playbooks/docker.yml --limit "docker" - name: Install and Configure Docker hosts: docker become: true tasks: - name: Install Docker and Docker Compose community.general.pacman: name: - docker - docker-compose - docker-buildx state: present - name: Create Docker daemon configuration directory file: path: /etc/docker state: directory mode: '0755' - name: Configure Docker daemon with DNS copy: content: | { "dns": ["1.1.1.1", "8.8.8.8"] } dest: /etc/docker/daemon.json mode: '0644' notify: Restart Docker - name: Enable and start Docker service systemd: name: docker enabled: true state: started - name: Add user to docker group user: name: "{{ ansible_user }}" groups: docker append: true handlers: - name: Restart Docker systemd: name: docker state: restarted