--- - tags: docker block: - name: Package apt: state: present name: - docker update_cache: true - name: Service systemd: state: started name: docker enabled: true - name: Make sure standard directories exist for each container ansible.builtin.file: path: "/opt/docker/{{ item }}" state: directory owner: root group: root mode: '0755' loop: "{{ docker.containers.keys() }}" loop_control: label: "/opt/docker/{{ item }}" - name: Make sure extra directories exist ansible.builtin.file: path: "/opt/docker/{{ item }}" state: directory mode: '0755' loop: "{{ docker.files.extra_dirs }}" loop_control: label: "/opt/docker/{{ item }}" - name: Make sure ddns/data chown is correct ansible.builtin.file: path: /opt/docker/ddns/data state: directory owner: 1200 group: 1200 mode: '0755' - name: Copy container config files # no_log: true template: src: "{{ item.src | default (item.name + '/docker-compose.yml.j2') }}" dest: "{{ item.dest | default ('/opt/docker/' + item.name + '/docker-compose.yml') }}" owner: "{{ item.user | default ('root') }}" group: "{{ item.user | default ('root') }}" mode: "{{ item.mode | default('0644') }}" force: "{{ item.force | default('yes') }}" notify: - Stop_docker - Start_docker loop_control: label: "{{ item.src | default ( item.name + ' compose file') }}" loop: "{{ docker.files.conf_files }}" - name: Chown of rendering devices to usenet user ansible.builtin.file: path: "/dev/dri/{{ item }}" owner: 1000 group: 1000 mode: '0660' loop: - card0 - renderD128