--- - name: Create Ollama directories ansible.builtin.file: path: "{{ item }}" state: directory owner: root group: root mode: "0755" loop: - "{{ ollama_data_dir }}" - "{{ ollama_data_dir }}/models" tags: ollama - name: Deploy Docker Compose file ansible.builtin.template: src: docker-compose.yml.j2 dest: "{{ ollama_data_dir }}/docker-compose.yml" owner: root group: root mode: "0644" notify: Restart ollama tags: ollama - name: Start Ollama community.docker.docker_compose_v2: project_src: "{{ ollama_data_dir }}" state: present pull: missing tags: ollama - name: List installed Ollama models ansible.builtin.command: docker exec ollama ollama list register: ollama_installed changed_when: false retries: 10 delay: 3 until: ollama_installed.rc == 0 tags: ollama - name: Pull Ollama model ansible.builtin.command: docker exec ollama ollama pull {{ ollama_model }} when: ollama_model not in ollama_installed.stdout changed_when: true tags: ollama