- name: Create install directory file: path: "{{ install_directory }}/{{ role_name }}" state: directory owner: "{{ docker_user }}" mode: "{{ docker_compose_directory_mask }}" become: true - name: Create database data directory file: path: "{{ data_dir }}/postgres/{{ role_name }}" state: directory owner: "{{ docker_user }}" mode: "{{ docker_compose_directory_mask }}" become: true - name: Create redis data directory file: path: "{{ data_dir }}/redis/{{ role_name }}" state: directory owner: "{{ docker_user }}" mode: "{{ docker_compose_directory_mask }}" become: true - name: Create data and config directories file: path: "{{ data_dir }}/{{ role_name }}/{{ item }}" state: directory owner: "{{ docker_user }}" mode: "{{ docker_compose_directory_mask }}" loop: - config - static - media - celery-beat - name: Install wger config file (templatized) template: src: prod.env dest: "{{ data_dir }}/{{ role_name }}/config/prod.env" - name: Install config files copy: src: ./ dest: "{{ data_dir }}/{{ role_name }}/config" - name: Copy docker-compose file to destination template: src: docker-compose.yml dest: "{{ install_directory }}/{{ role_name }}/docker-compose.yml" owner: "{{ docker_user }}" mode: "{{ docker_compose_file_mask }}" validate: docker compose -f %s config become: true - name: Start docker container community.docker.docker_compose_v2: project_src: "{{ install_directory }}/{{ role_name }}" pull: always remove_orphans: yes