diff --git a/roles/backup-docker-to-local/tasks/main.yml b/roles/backup-docker-to-local/tasks/main.yml
index bdb97b13..e9f13cd2 100644
--- a/roles/backup-docker-to-local/tasks/main.yml
+++ b/roles/backup-docker-to-local/tasks/main.yml
@@ -50,25 +50,6 @@
 - name: "include seed-database-to-backup.yml"
   include_tasks: seed-database-to-backup.yml
 
-- name: Set file permissions for databases.csv to be readable, writable, and executable by root only
-  ansible.builtin.file:
-    path: "{{ backup_docker_to_local_folder }}databases.csv"
-    mode: '0700'
-    owner: root
-    group: root
-  when: >
-    (database_instance is defined and
-    database_name is defined and
-    database_username is defined and
-    database_password is defined) and
-    run_once_backup_docker_to_local_file_permission is not defined
-  register: file_permission_result
-
-- name: run the backup_docker_to_local_file_permission tasks once
-  set_fact:
-    run_once_backup_docker_to_local_file_permission: true
-  when: run_once_backup_docker_to_local_file_permission is not defined and file_permission_result is defined and file_permission_result.changed
-
 - name: run the backup_docker_to_local tasks once
   set_fact:
     run_once_backup_docker_to_local: true
diff --git a/roles/backup-docker-to-local/tasks/seed-database-to-backup.yml b/roles/backup-docker-to-local/tasks/seed-database-to-backup.yml
index 9cdeb6e2..f15951a8 100644
--- a/roles/backup-docker-to-local/tasks/seed-database-to-backup.yml
+++ b/roles/backup-docker-to-local/tasks/seed-database-to-backup.yml
@@ -1,6 +1,6 @@
 # This file is also used by docker-matrix-compose
 
-- name: Display all database variables
+- name: "{{ role_name }} | Display all database variables"
   debug:
     msg: |
       database_instance: "{{ database_instance | default('undefined') }}"
@@ -9,7 +9,7 @@
       database_password: "{{ database_password | default('undefined') }}"
   when: enable_debug | bool
 
-- name: fail if not all required database variables are defined
+- name: "{{ role_name }} | fail if not all required database variables are defined"
   fail:
     msg: "You must define all of the following variables: database_instance, database_name, database_username, database_password"
   when: >
@@ -22,12 +22,31 @@
      database_username is defined and
      database_password is defined)
 
-- name: seed database values
+- name: "{{ role_name }} | seed database values in directory {{ backup_docker_to_local_folder }}"
   command:
     cmd: "python database_entry_seeder.py databases.csv {{database_instance}} {{database_name}} {{database_username}} {{database_password}}"
-    chdir: "{{backup_docker_to_local_folder}}"
+    chdir: "{{ backup_docker_to_local_folder }}"
   when: >
     database_instance is defined and
     database_name is defined and
     database_username is defined and
-    database_password is defined
\ No newline at end of file
+    database_password is defined
+
+- name: Set file permissions for databases.csv to be readable, writable, and executable by root only
+  ansible.builtin.file:
+    path: "{{ backup_docker_to_local_folder }}databases.csv"
+    mode: '0700'
+    owner: root
+    group: root
+  when: >
+    (database_instance is defined and
+    database_name is defined and
+    database_username is defined and
+    database_password is defined) and
+    run_once_backup_docker_to_local_file_permission is not defined
+  register: file_permission_result
+
+- name: run the backup_docker_to_local_file_permission tasks once
+  set_fact:
+    run_once_backup_docker_to_local_file_permission: true
+  when: run_once_backup_docker_to_local_file_permission is not defined and file_permission_result is defined and file_permission_result.changed
\ No newline at end of file
diff --git a/roles/docker-central-database/tasks/main.yml b/roles/docker-central-database/tasks/main.yml
index 1118e212..9c2bedf7 100644
--- a/roles/docker-central-database/tasks/main.yml
+++ b/roles/docker-central-database/tasks/main.yml
@@ -1,22 +1,27 @@
+- name: "{{ role_name }} | Load database variables"
+  include_vars: "{{ item }}"
+  loop:
+    - "{{ docker_var_file }}"   # Important to load docker variables first so that database can use them
+    - "{{ database_var_file }}" # Important to load them before docker role so that backup can use them
+
 # Docker Routines
-- name: "include docker-compose role"
+- name: "{{ role_name }} | Include docker-compose role"
   include_role: 
     name: docker-compose
 
-# Database Routines
-- name: "load variables from {{ role_path }}/vars/database.yml for whole play"
-  include_vars: "{{ role_path }}/vars/database.yml"
-
 # The following env file will just be used from the dedicated mariadb container
 # and not the central-mariadb-database
-- name: "create {{database_env}}"
+- name: "{{ role_name }} | Create {{database_env}}"
   template: 
     src: "env/{{database_type}}.env.j2"
     dest: "{{database_env}}"
   notify: docker compose project build and setup
   when: not applications[application_id].database.central_storage | bool
 
-- name: create central database
+- name: "{{ role_name }} | Create central database"
   include_role:
     name: "docker-{{database_type}}"
-  when: applications[application_id].database.central_storage | bool
\ No newline at end of file
+  when: applications[application_id].database.central_storage | bool
+
+- name: "{{ role_name }} | Add database to backup"
+  include_tasks: "{{ playbook_dir }}/roles/backup-docker-to-local/tasks/seed-database-to-backup.yml"
\ No newline at end of file
diff --git a/roles/docker-central-database/vars/main.yml b/roles/docker-central-database/vars/main.yml
new file mode 100644
index 00000000..66ea64a4
--- /dev/null
+++ b/roles/docker-central-database/vars/main.yml
@@ -0,0 +1,2 @@
+database_var_file:  "{{ role_path }}/vars/database.yml"
+docker_var_file:    "{{playbook_dir}}/roles/docker-compose/vars/docker-compose.yml"
\ No newline at end of file
diff --git a/roles/docker-compose/tasks/main.yml b/roles/docker-compose/tasks/main.yml
index 411266ee..41b9d5d1 100644
--- a/roles/docker-compose/tasks/main.yml
+++ b/roles/docker-compose/tasks/main.yml
@@ -1,7 +1,7 @@
-- name: "load variables from {{ role_path }}/vars/docker-compose.yml for whole play"
+- name: "{{ role_name }} | Load variables from {{ role_path }}/vars/docker-compose.yml for whole play"
   include_vars: "{{ role_path }}/vars/docker-compose.yml"
 
-- name: "remove {{ docker_compose.directories.instance }} and all its contents"
+- name: "{{ role_name }} | Remove {{ docker_compose.directories.instance }} and all its contents"
   file:
     path: "{{ docker_compose.directories.instance }}"
     state: absent
@@ -9,7 +9,7 @@
 
 # This could lead to problems in docker-compose directories which are based on a git repository
 # @todo Verify that this isn't the case. E.g. in accounting
-- name: "Create all docker-compose directories (including parent directories)"
+- name: "{{ role_name }} | Create all docker-compose directories (including parent directories)"
   file:
     path: "{{ item.value }}"
     state: directory
diff --git a/roles/docker-nextcloud/vars/main.yml b/roles/docker-nextcloud/vars/main.yml
index 94032ff2..8cd99ccf 100644
--- a/roles/docker-nextcloud/vars/main.yml
+++ b/roles/docker-nextcloud/vars/main.yml
@@ -7,7 +7,7 @@ database_password:  	                              "{{applications.nextcloud.cre
 database_type:                                      "mariadb"                                                     # Database flavor
 
 # Networking
-domain:                                             "{{domains[application_id]}}"                                 # Public domain at which Nextcloud will be accessable
+domain:                                             "{{ domains[application_id] }}"                                 # Public domain at which Nextcloud will be accessable
 http_port:                                          "{{ ports.localhost.http[application_id] }}"                  # Port at which nextcloud is reachable in the local network
 
 # Control Node