--- - name: Remove depot docker version apt: name: "{{ item }}" state: absent with_items: - docker - docker-engine - docker.io - name: Install tool to use apt with https apt: name: "{{ item }}" state: present with_items: - apt-transport-https - ca-certificates - name: Add Docker apt key. apt_key: url: https://download.docker.com/linux/debian/gpg id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88 state: present register: add_repository_key - name: Ensure curl is present (on older systems without SNI). apt: name: curl state: present when: add_repository_key is failed - name: Add Docker apt key (alternative for older systems without SNI). shell: "curl -sSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -" args: warn: no when: add_repository_key is failed - name: Add Docker repository. apt_repository: repo: deb [arch=amd64] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable state: present update_cache: yes - name: Install docker-ce apt: name: docker-ce state: present - name: Install docker-compose get_url: url: https://github.com/docker/compose/releases/download/1.22.0/docker-compose-Linux-x86_64 dest: /usr/local/bin/docker-compose mode: 751 - name: Create docker group group: name: docker state: present - name: Add deploy user to docker group user: name: "{{ item.username }}" groups: docker append: yes with_items: '{{ deploy_users }}'