diff --git a/files/apprise/docker-compose.template.yml b/files/apprise/docker-compose.template.yml new file mode 100644 index 0000000..6f0132a --- /dev/null +++ b/files/apprise/docker-compose.template.yml @@ -0,0 +1,14 @@ +services: + + apprise_app: + image: caronc/apprise:v1.3.3 + container_name: apprise_app + restart: unless-stopped + networks: + - "web_proxy_network" + environment: + APPRISE_STATEFUL_MODE: disabled + +networks: + web_proxy_network: + external: true diff --git a/playbook-all-applications.yml b/playbook-all-applications.yml index 363822f..a589322 100644 --- a/playbook-all-applications.yml +++ b/playbook-all-applications.yml @@ -37,6 +37,9 @@ - name: 'Configure remembos' ansible.builtin.import_playbook: playbook-remembos.yml +- name: 'Configure apprise' + ansible.builtin.import_playbook: playbook-apprise.yml + # - name: 'Configure homepage' diff --git a/playbook-apprise.yml b/playbook-apprise.yml new file mode 100644 index 0000000..a948eb2 --- /dev/null +++ b/playbook-apprise.yml @@ -0,0 +1,49 @@ +--- +- name: "Configure apprise application" + hosts: all + + vars_files: + - vars/secrets.yml + + vars: + app_name: "apprise" + app_user: "{{ app_name }}" + app_owner_uid: 1104 + app_owner_gid: 1104 + base_dir: "{{ (application_dir, app_name) | path_join }}" + + tasks: + - name: "Create user and environment" + ansible.builtin.import_role: + name: owner + vars: + owner_name: "{{ app_user }}" + owner_uid: "{{ app_owner_uid }}" + owner_gid: "{{ app_owner_gid }}" + owner_extra_groups: ["docker"] + + - name: "Create application internal directories" + ansible.builtin.file: + path: "{{ item }}" + state: "directory" + owner: "{{ app_user }}" + group: "{{ app_user }}" + mode: "0750" + loop: + - "{{ base_dir }}" + + - name: "Copy docker compose file" + ansible.builtin.template: + src: "./files/{{ app_name }}/docker-compose.template.yml" + dest: "{{ base_dir }}/docker-compose.yml" + owner: "{{ app_user }}" + group: "{{ app_user }}" + mode: "0640" + + - name: "Run application with docker compose" + community.docker.docker_compose_v2: + project_src: "{{ base_dir }}" + state: "present" + remove_orphans: true + tags: + - run-app