- name: "Add apt key for Docker" apt_key: url: "https://download.docker.com/linux/ubuntu/gpg" state: present - name: "Add Docker repository" apt_repository: repo: "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable" state: present - name: "Install Docker" apt: state: present pkg: - docker-ce - docker-ce-cli - containerd.io - docker-compose - name: "Download lazydocker" ansible.builtin.get_url: url: "https://github.com/jesseduffield/lazydocker/releases/download/v{{ docker_lazydocker_version }}/lazydocker_{{ docker_lazydocker_version }}_Linux_x86_64.tar.gz" dest: "/tmp/lazydocker.tar.gz" - name: "Extract lazydocker" ansible.builtin.unarchive: src: "/tmp/lazydocker.tar.gz" dest: "/usr/bin/" mode: "0777" remote_src: yes exclude: - "LICENSE" - "README.md" - name: "Copy the project files to the server" copy: src: "{{ docker_project_name }}" dest: "{{ lookup('env', 'HOME') }}/" become: false when: not docker_skip_project - name: "Copy the traefik config" copy: src: "traefik.yaml" dest: "{{ docker_project_path }}/traefik.yaml" become: false when: not docker_skip_project - name: "Start the Docker containers" community.docker.docker_compose: project_src: "{{ docker_project_path }}" state: "present" pull: "yes" remove_orphans: "yes" when: not docker_skip_project