diff --git a/common/crowdsec/tasks/main.yml b/common/crowdsec/tasks/main.yml
index eb3ff50273d60677e9a330ea82b746f0d09b4672..528ced23125f121bccf74ae5807322f5924a8ced 100644
--- a/common/crowdsec/tasks/main.yml
+++ b/common/crowdsec/tasks/main.yml
@@ -18,12 +18,12 @@
 
 # Start containers
 - name: "stop {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
\ No newline at end of file
diff --git a/common/docker_dockerstats/tasks/main.yml b/common/docker_dockerstats/tasks/main.yml
index 134a66c48250c2e711884783b239839ff58404cd..dbc65c107c09833b40658d6a8361e05d8809c517 100644
--- a/common/docker_dockerstats/tasks/main.yml
+++ b/common/docker_dockerstats/tasks/main.yml
@@ -19,6 +19,6 @@
 
 
 - name: start {{ servicename }} docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/common/docker_ldap/tasks/main.yml b/common/docker_ldap/tasks/main.yml
index 76a47dcd6c7b742d225f9f315a61f2aa31f8ee4e..4fcd906e2b0b16173b9b6d7f941a7f9f6ee0697a 100644
--- a/common/docker_ldap/tasks/main.yml
+++ b/common/docker_ldap/tasks/main.yml
@@ -25,13 +25,13 @@
   register: config
 
 - name: "stop {{ servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 - name: "start {{ servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
 
diff --git a/common/docker_traefik/tasks/main.yml b/common/docker_traefik/tasks/main.yml
index 579a557f6b748f2119a66a83a296939dad95bf6e..54b26f8b8ee7a38f8965c45229d0f8514931a5ab 100644
--- a/common/docker_traefik/tasks/main.yml
+++ b/common/docker_traefik/tasks/main.yml
@@ -51,13 +51,13 @@
   register: config
 
 - name: "stop {{ servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 - name: "start {{ servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
     
diff --git a/common/docker_watchtower/tasks/main.yml b/common/docker_watchtower/tasks/main.yml
index c7caa58065d66f1e7bea9ef6a3bc0faec865cf32..2ddbc65da6259ec07f4e919d701e878a0a8a5755 100644
--- a/common/docker_watchtower/tasks/main.yml
+++ b/common/docker_watchtower/tasks/main.yml
@@ -23,7 +23,7 @@
 
   
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
     build: "{{ dockerconfig.changed }}"
diff --git a/host_vars/ogg b/host_vars/ogg
index 466a3b7a9d280094c0317344fc3be899fa8825c2..e54838a3cf0979a1675de2541ff369ed47c4396f 100644
--- a/host_vars/ogg
+++ b/host_vars/ogg
@@ -52,22 +52,22 @@ alert:
     warn: 15
     crit: 30
   containers:
-    - { name: "dockerstats_app_1" }    
-    - { name: "esphome_app_1" }    
-    - { name: "esphome-dev_app_1" }    
-    - { name: "fridgeserver_app_1" }    
-    - { name: "grafana_app_1" }    
-    - { name: "heimdall_app_1" }    
-    - { name: "homeassistant_app_1" }    
-    - { name: "homeassistant_influxdb_1" }    
-    - { name: "mqtt_app_1" } 
-    - { name: "mqtt_influxdb_1" } 
-    - { name: "mqtt_tgbinary_1" } 
-    - { name: "mqtt_tgfloat_1" } 
-    - { name: "nodered_app_1" }
-    - { name: "omada_app_1" }
-    - { name: "tasmoadmin_app_1" }
-    - { name: "traefik_app_1" }
+    - { name: "dockerstats-app-1" }    
+    - { name: "esphome-app-1" }    
+    - { name: "esphome-dev-app-1" }    
+    - { name: "fridgeserver-app-1" }    
+    - { name: "grafana-app-1" }    
+    - { name: "heimdall-app-1" }    
+    - { name: "homeassistant-app-1" }    
+    - { name: "homeassistant-influxdb-1" }    
+    - { name: "mqtt-app-1" } 
+    - { name: "mqtt-influxdb-1" } 
+    - { name: "mqtt-tgbinary-1" } 
+    - { name: "mqtt-tgfloat-1" } 
+    - { name: "nodered-app-1" }
+    - { name: "omada-app-1" }
+    - { name: "tasmoadmin-app-1" }
+    - { name: "traefik-app-1" }
   disks:
     - { mountpoint: "/", warn: "5 GB", crit: "1 GB" }
     - { mountpoint: "/srv", warn: "5 GB", crit: "1 GB" }
diff --git a/host_vars/verwaltung b/host_vars/verwaltung
index 0bbba10964ddbe4af3ae7aabc418eb2d472604c0..ce47cd022e3133b782742004822f83653e73c06b 100644
--- a/host_vars/verwaltung
+++ b/host_vars/verwaltung
@@ -66,19 +66,19 @@ alert:
     warn: 5
     crit: 10
   containers:
-    - { name: "dockerstats_app_1" }
-    - { name: "gitea_app_1" }
-    - { name: "gitea_db_1" }
-    - { name: "jameica-vnc_ldap_auth_1" }
-    - { name: "jameica-vnc_nginx_1" }
-    - { name: "jameica-vnc_vnc_1" }
-    - { name: "mysql_app_1" }
-    - { name: "nextcloud_app_1" }
-    - { name: "nextcloud_mysql_1" }
-    - { name: "nextcloud_redis_1" }
-    - { name: "nextcloud_webcron_1" }
-    - { name: "traefik_app_1" }
-    - { name: "watchtower_app_1" }
+    - { name: "dockerstats_app-1" }
+    - { name: "gitea-app-1" }
+    - { name: "gitea-db-1" }
+    - { name: "jameica-vnc-ldap-auth-1" }
+    - { name: "jameica-vnc-nginx-1" }
+    - { name: "jameica-vnc-vnc-1" }
+    - { name: "mysql-app-1" }
+    - { name: "nextcloud-app-1" }
+    - { name: "nextcloud-mysql-1" }
+    - { name: "nextcloud-redis-1" }
+    - { name: "nextcloud-webcron-1" }
+    - { name: "traefik-app-1" }
+    - { name: "watchtower-app-1" }
   disks: 
     - { mountpoint: "/", warn: "5 GB", crit: "1 GB" }
     - { mountpoint: "/srv", warn: "5 GB", crit: "1 GB" }
diff --git a/host_vars/webserver b/host_vars/webserver
index 0d5910a6c77a045090add029cd77abefd78fa3d7..c557afb56f85bce000eac145fe5e60feb3f2a107 100644
--- a/host_vars/webserver
+++ b/host_vars/webserver
@@ -71,50 +71,50 @@ alert:
     warn: 5
     crit: 10
   containers:
-    - { name: "coturn_coturn_1" }
-    - { name: "dockerstats_app_1" }
-    - { name: "dokuwiki_app_1" }
-    - { name: "gitlab_app_1" }
-    - { name: "gitlab_dind_1" }
-    - { name: "gitlab_runner_1" }
-    - { name: "hackmd_app_1" }
-    - { name: "hackmd_db_1" }
-    - { name: "icinga_app_1" }
-    - { name: "icinga_db_1" }
-    - { name: "icinga_graphite_1" }
-    - { name: "keycloak_app_1" }
-    - { name: "keycloak_db_1" }
-    - { name: "keycloak_sync-group-active_1" }
-    - { name: "ldap_openldap_1" }
-    - { name: "ldap_phpldapadmin_1" }
-    - { name: "mail_admin_1" }
-    - { name: "mail_antispam_1" }
-    - { name: "mail_certdumper_1" }
-    - { name: "mail_db_1" }
-    - { name: "mail_front_1" }
-    - { name: "mail_imap_1" }
-    - { name: "mail_oletools_1" }
-    - { name: "mail_redis_1" }
-    - { name: "mail_resolver_1" }
-    - { name: "mail_smtp_1" }
-    - { name: "mail_webmail_1" }
-    - { name: "mail_mailman-core_1" }
-    - { name: "mail_mailman-web_1" }
-    - { name: "mail_mailman-nginx_1" }
-    - { name: "matrix_ma1sd_1" }
-    - { name: "matrix_db_1" }
-    - { name: "matrix_purgemediacache_1" }
-    - { name: "matrix_synapse_1" }
-    - { name: "matterbridge_cw_1" }
-    - { name: "matterbridge_wz_1" }
-    - { name: "matterbridge_web_1" }
-    - { name: "matterbridge_restarter_1" }
-    - { name: "traefik_app_1" }
-    - { name: "vpnserver_app_1" }
-    - { name: "warpapi_app_1" }
-    - { name: "watchtower_app_1" }
-    - { name: "wordpress_app_1" }
-    - { name: "wordpress_db_1" }
+    - { name: "coturn-coturn-1" }
+    - { name: "dockerstats-app-1" }
+    - { name: "dokuwiki-app-1" }
+    - { name: "gitlab-app-1" }
+    - { name: "gitlab-dind-1" }
+    - { name: "gitlab-runner-1" }
+    - { name: "hackmd-app-1" }
+    - { name: "hackmd-db-1" }
+    - { name: "icinga-app-1" }
+    - { name: "icinga-db-1" }
+    - { name: "icinga-graphite-1" }
+    - { name: "keycloak-app-1" }
+    - { name: "keycloak-db-1" }
+    - { name: "keycloak-sync-group-active-1" }
+    - { name: "ldap-openldap-1" }
+    - { name: "ldap-phpldapadmin-1" }
+    - { name: "mail-admin-1" }
+    - { name: "mail-antispam-1" }
+    - { name: "mail-certdumper-1" }
+    - { name: "mail-db-1" }
+    - { name: "mail-front-1" }
+    - { name: "mail-imap-1" }
+    - { name: "mail-oletools-1" }
+    - { name: "mail-redis-1" }
+    - { name: "mail-resolver-1" }
+    - { name: "mail-smtp-1" }
+    - { name: "mail-webmail-1" }
+    - { name: "mail-mailman-core-1" }
+    - { name: "mail-mailman-web-1" }
+    - { name: "mail-mailman-nginx-1" }
+    - { name: "matrix-ma1sd-1" }
+    - { name: "matrix-db-1" }
+    - { name: "matrix-purgemediacache-1" }
+    - { name: "matrix-synapse-1" }
+    - { name: "matterbridge-cw-1" }
+    - { name: "matterbridge-wz-1" }
+    - { name: "matterbridge-web-1" }
+    - { name: "matterbridge-restarter-1" }
+    - { name: "traefik-app-1" }
+    - { name: "vpnserver-app-1" }
+    - { name: "warpapi-app-1" }
+    - { name: "watchtower-app-1" }
+    - { name: "wordpress-app-1" }
+    - { name: "wordpress-db-1" }
   #  - { name: "workadventure_back_1" }
   #  - { name: "workadventure_front_1" }
   #  - { name: "workadventure_icon_1" }
diff --git a/intern/docker_esphome-dev/tasks/main.yml b/intern/docker_esphome-dev/tasks/main.yml
index a23eef10ceb1aa581df9d1a8f67effc4884dcaad..045d2e4baef7f5bcaf520fd6ffcbf8ce68c383dd 100644
--- a/intern/docker_esphome-dev/tasks/main.yml
+++ b/intern/docker_esphome-dev/tasks/main.yml
@@ -36,12 +36,12 @@
   register: config
 
 - name: "stop {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/intern/docker_esphome/tasks/main.yml b/intern/docker_esphome/tasks/main.yml
index ce21f68207ffd378c38c3f583b7342dc2b893cce..d527833dad5cfc1e8568d5ebd0e18587fd6358b6 100644
--- a/intern/docker_esphome/tasks/main.yml
+++ b/intern/docker_esphome/tasks/main.yml
@@ -60,12 +60,12 @@
   register: config
 
 - name: "stop {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/intern/docker_fridgeserver/tasks/main.yml b/intern/docker_fridgeserver/tasks/main.yml
index c7bb14f204f590529b137e587823ad3604e45931..df0aa807054586cb486fe0dcede43d48cea45796 100644
--- a/intern/docker_fridgeserver/tasks/main.yml
+++ b/intern/docker_fridgeserver/tasks/main.yml
@@ -18,6 +18,6 @@
     - docker-compose.yml
 
 - name: start {{ servicename }}
-  community.docker.docker_compose:
+  community.docker.docker_compose_v2:
     state: present
     project_src: "{{ basedir }}"
diff --git a/intern/docker_grafana/tasks/main.yml b/intern/docker_grafana/tasks/main.yml
index 09f9df78de53b0f5eb7d8f933cc8bd7138a4782f..819188dcdde045e927e5efc3a5cd96401717f7d1 100644
--- a/intern/docker_grafana/tasks/main.yml
+++ b/intern/docker_grafana/tasks/main.yml
@@ -47,6 +47,6 @@
     - datasources.yml
 
 - name: start grafana docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/intern/docker_heimdall/tasks/main.yml b/intern/docker_heimdall/tasks/main.yml
index 45a8fbf7395088b62163cc241c76043bccbdedc9..d34c8ab5464a1020f7a5c5f684868de2ce83d64e 100644
--- a/intern/docker_heimdall/tasks/main.yml
+++ b/intern/docker_heimdall/tasks/main.yml
@@ -16,6 +16,6 @@
     - docker-compose.yml
 
 - name: start {{ servicename }}
-  community.docker.docker_compose:
+  community.docker.docker_compose_v2:
     state: present
     project_src: "{{ basedir }}"
diff --git a/intern/docker_homeassistant/tasks/main.yml b/intern/docker_homeassistant/tasks/main.yml
index 6d33714021f9eddc3c197fe6f3946ac3a247c64c..d1a0c24a8cb5af5d7925e9c39dd5171d14200a08 100644
--- a/intern/docker_homeassistant/tasks/main.yml
+++ b/intern/docker_homeassistant/tasks/main.yml
@@ -29,13 +29,13 @@
 
 
 - name: "stop {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config_files.changed 
 
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/intern/docker_mqtt/tasks/main.yml b/intern/docker_mqtt/tasks/main.yml
index dbcb796b6c7452664ea0492f9e2024f2ecefe13c..910e17290ed6f1d136edf764385354611b6ec7d2 100644
--- a/intern/docker_mqtt/tasks/main.yml
+++ b/intern/docker_mqtt/tasks/main.yml
@@ -26,7 +26,7 @@
     - telegraf_float.conf
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
 
diff --git a/intern/docker_nodered/tasks/main.yml b/intern/docker_nodered/tasks/main.yml
index c0ec94294fb80f73af038470fad0b8432b3c6271..3a249f0e1df0916278711098fd805cef5fc04c57 100644
--- a/intern/docker_nodered/tasks/main.yml
+++ b/intern/docker_nodered/tasks/main.yml
@@ -18,6 +18,6 @@
     - "docker-compose.yml"
 
 - name: "start {{ servicename }} with docker-compose"
-  community.docker.docker_compose:
+  community.docker.docker_compose_v2:
     state: present
     project_src: "{{ basedir }}"
diff --git a/intern/docker_omada/tasks/main.yml b/intern/docker_omada/tasks/main.yml
index 413c9109605e23df34696b0f74e33fbcc7be527b..81cd8b99be8296c74167111ded8b1e24a0159d4c 100644
--- a/intern/docker_omada/tasks/main.yml
+++ b/intern/docker_omada/tasks/main.yml
@@ -24,7 +24,7 @@
     - docker-compose.yml 
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
 
diff --git a/intern/docker_tasmoadmin/tasks/main.yml b/intern/docker_tasmoadmin/tasks/main.yml
index c0ec94294fb80f73af038470fad0b8432b3c6271..3a249f0e1df0916278711098fd805cef5fc04c57 100644
--- a/intern/docker_tasmoadmin/tasks/main.yml
+++ b/intern/docker_tasmoadmin/tasks/main.yml
@@ -18,6 +18,6 @@
     - "docker-compose.yml"
 
 - name: "start {{ servicename }} with docker-compose"
-  community.docker.docker_compose:
+  community.docker.docker_compose_v2:
     state: present
     project_src: "{{ basedir }}"
diff --git a/remote/docker_homeassistant/tasks/main.yml b/remote/docker_homeassistant/tasks/main.yml
index 87bd9ce3f3c9c2d03606ce1a398fe009d6c23f12..df24774fced1cd2f9455a43b19a1c74c287eb220 100644
--- a/remote/docker_homeassistant/tasks/main.yml
+++ b/remote/docker_homeassistant/tasks/main.yml
@@ -26,13 +26,13 @@
 
 
 - name: "stop {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config_files.changed 
 
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/remote/docker_netdata/tasks/main.yml b/remote/docker_netdata/tasks/main.yml
index 21a41e1fad3b5dc8d4f619e88fae855cee94f793..7016306ab303ee4b3b0e8c21ab51847e4b012061 100644
--- a/remote/docker_netdata/tasks/main.yml
+++ b/remote/docker_netdata/tasks/main.yml
@@ -18,7 +18,7 @@
     - docker-compose.yml 
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
 
diff --git a/remote/docker_prometheus/tasks/main.yml b/remote/docker_prometheus/tasks/main.yml
index 85279791f8900f1f2bac0e948414b7b29ef0e1b8..ffe884ff6d998dea1dc28d487ed4ca064769e048 100644
--- a/remote/docker_prometheus/tasks/main.yml
+++ b/remote/docker_prometheus/tasks/main.yml
@@ -17,7 +17,7 @@
     - prometheus.yml 
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
 
diff --git a/remote/docker_unifi/tasks/main.yml b/remote/docker_unifi/tasks/main.yml
index 1f9e11ca793ad268b631259947db9966ee96ca26..c6b3681d36b64630b9c11e706c7e4da551f4759f 100644
--- a/remote/docker_unifi/tasks/main.yml
+++ b/remote/docker_unifi/tasks/main.yml
@@ -19,7 +19,7 @@
     - docker-compose.yml 
 
 - name: "start {{ basedir }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
 
diff --git a/testserver/docker_uffd/tasks/main.yml b/testserver/docker_uffd/tasks/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..01a9118198ca53edadbc7d7cfdac5bd085fd43fa
--- /dev/null
+++ b/testserver/docker_uffd/tasks/main.yml
@@ -0,0 +1,40 @@
+---
+
+- include_tasks: ../functions/get_secret.yml
+  with_items:
+    - { path: "{{ basedir }}/secrets/mysql_admin_pass",  length: 24 }
+    - { path: "{{ basedir }}/secrets/mysql_user_pass",  length: 24 }
+    - { path: "{{ basedir }}/secrets/uffd_admin_pass",  length: 24 }
+    - { path: "{{ basedir }}/secrets/uffd_secret_key",  length: 64 }
+    - { path: "{{ basedir }}/secrets/uffd_mail_pass",   length: 12 }
+
+- name: create folder struct for {{servicename}}
+  file: 
+    path: "{{ item }}"
+    state: "directory"
+  with_items:
+    - "{{ basedir }}"
+    - "{{ basedir }}/secrets"
+    - "{{ basedir }}/db/"   
+
+- name: create config files
+  template: 
+    src: "{{ item }}" 
+    dest: "{{ basedir }}/{{ item }}"
+  with_items:
+    - "Dockerfile"
+    - "entrypoint.sh"
+    - "docker-compose.yml"
+    - "uffd.cfg"
+  register: config
+
+- name: stop {{ servicename }} docker
+  community.docker.docker_compose_v2:
+    project_src: "{{ basedir }}"
+    state: absent
+  when: config.changed
+
+- name: start {{servicename}} docker
+  community.docker.docker_compose_v2:
+    project_src: "{{ basedir }}"
+    state: present
diff --git a/verwaltung/docker_gitea/tasks/main.yml b/verwaltung/docker_gitea/tasks/main.yml
index 1967ef854da81cbad62dc2f515d4f667414f6210..780d091904ca60070506a546a3723c85bfe174f4 100644
--- a/verwaltung/docker_gitea/tasks/main.yml
+++ b/verwaltung/docker_gitea/tasks/main.yml
@@ -23,7 +23,7 @@
     - "docker-compose.yml"
 
 - name: start gitea docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/gitea/
     state: present
   
diff --git a/verwaltung/docker_jameica/tasks/main.yml b/verwaltung/docker_jameica/tasks/main.yml
index 9f43c196b4de53871c2eed0166888b58f17619f7..f8056c7b3224cb36f7b8c352259f0683f019af4a 100644
--- a/verwaltung/docker_jameica/tasks/main.yml
+++ b/verwaltung/docker_jameica/tasks/main.yml
@@ -23,7 +23,7 @@
     - "nginx.conf"
 
 - name: start jameica docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/jameica-vnc/
     state: present
     
diff --git a/verwaltung/docker_nextcloud/tasks/main.yml b/verwaltung/docker_nextcloud/tasks/main.yml
index 7ae453351f282a33aa90f3e2f3476a3025cd52f2..5b51f6a926919850d0eb033529c6f11d0a5026a5 100644
--- a/verwaltung/docker_nextcloud/tasks/main.yml
+++ b/verwaltung/docker_nextcloud/tasks/main.yml
@@ -30,7 +30,7 @@
 
 
 - name: start nextcloud docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/nextcloud/
     state: present
 
diff --git a/webserver/docker_coturn/tasks/main.yml b/webserver/docker_coturn/tasks/main.yml
index 5d6643412750f53ba44f20d44de85aa8e28bce8d..6211299701fc39b9e5a40f028bdb8248b4c5080b 100644
--- a/webserver/docker_coturn/tasks/main.yml
+++ b/webserver/docker_coturn/tasks/main.yml
@@ -21,12 +21,12 @@
   register: config
 
 - name: "stop {{servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/{{servicename}}/
     state: absent
   when: config.changed
 
 - name: "start {{servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/{{servicename}}/
     state: present
diff --git a/webserver/docker_dokuwiki/tasks/main.yml b/webserver/docker_dokuwiki/tasks/main.yml
index 09f0225b0ac575a5d9767535974e61d67337fbc0..e392551aee68a32748f1ac5176592d74ec2fbf99 100644
--- a/webserver/docker_dokuwiki/tasks/main.yml
+++ b/webserver/docker_dokuwiki/tasks/main.yml
@@ -33,12 +33,12 @@
     disabled: false
 
 - name: "stop {{ servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 - name: "start {{ servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/webserver/docker_gitlab/tasks/main.yml b/webserver/docker_gitlab/tasks/main.yml
index 5091020b76bad47f8219002978a4cb03496143f6..36dbab8ee61499229f7655c0705cd10408984979 100644
--- a/webserver/docker_gitlab/tasks/main.yml
+++ b/webserver/docker_gitlab/tasks/main.yml
@@ -34,12 +34,12 @@
 
 
 - name: stop gitlab docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/gitlab/
     state: absent
   when: configs.changed
 
 - name: start gitlab docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/gitlab/
     state: present
diff --git a/webserver/docker_hackmd/tasks/main.yml b/webserver/docker_hackmd/tasks/main.yml
index b36052dd62e41436ed0200a93a85866e185c053b..f67c1426cfe09d5595c50e4745ff97bf8e9dd5d6 100644
--- a/webserver/docker_hackmd/tasks/main.yml
+++ b/webserver/docker_hackmd/tasks/main.yml
@@ -27,12 +27,12 @@
   register: configs
 
 - name: stop hackmd docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/hackmd
     state: absent
   when: configs.changed
 
 - name: start hackmd docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/hackmd/
     state: present
diff --git a/webserver/docker_icinga/handlers/main.yml b/webserver/docker_icinga/handlers/main.yml
index 068770a8c8aaaa0f8455be9761145cf94584a9f9..dc4b4b24c1e2dbece66dcc8eb60ff6b0376b41ac 100644
--- a/webserver/docker_icinga/handlers/main.yml
+++ b/webserver/docker_icinga/handlers/main.yml
@@ -1,7 +1,7 @@
 ---
 
 - name: restart icinga docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/icinga/
     state: present
     restarted: yes
diff --git a/webserver/docker_icinga/tasks/main.yml b/webserver/docker_icinga/tasks/main.yml
index 8e36eac3466d8e3728575ac71bb8bc66c21b5dc8..6319c40e154826e4440dc270ca396e98802a9371 100644
--- a/webserver/docker_icinga/tasks/main.yml
+++ b/webserver/docker_icinga/tasks/main.yml
@@ -57,7 +57,7 @@
   register: configured
 
 - name: "start {{ servicename }} docker (init)"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
   when: configured.stat.exists == False
@@ -68,7 +68,7 @@
   when: configured.stat.exists == False
 
 - name: "stop {{ servicename }} docker (init)"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: configured.stat.exists == False
@@ -117,7 +117,6 @@
 
   
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
-    state: present
-    build: "{{ dockerconfig.changed }}"
+    state: present
\ No newline at end of file
diff --git a/webserver/docker_keycloak/tasks/main.yml b/webserver/docker_keycloak/tasks/main.yml
index b42f7267504963146fd424e3b4b475cb8e1b0aaa..57a68e4c48789cbc3ffc688d3bde6eb6c6c04741 100644
--- a/webserver/docker_keycloak/tasks/main.yml
+++ b/webserver/docker_keycloak/tasks/main.yml
@@ -38,13 +38,13 @@
 
 
 - name: stop keycloak docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/keycloak/
     state: absent
   when: config.changed
 
 
 - name: start keycloak docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/keycloak/
     state: present
diff --git a/webserver/docker_mail/tasks/main.yaml b/webserver/docker_mail/tasks/main.yaml
index d0101de1effb18e5895a4edbee62d3af391ffbe8..c9d324eeae4f03c95927ce028437498f0f374336 100644
--- a/webserver/docker_mail/tasks/main.yaml
+++ b/webserver/docker_mail/tasks/main.yaml
@@ -88,25 +88,25 @@
 
 # Start containers
 - name: "stop {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
 
 
 # Start mailman containers
 # - name: "stop {{ servicename }} (mailman) docker"
-#   docker_compose:
+#   community.docker.docker_compose_v2:
 #     project_src: "{{ basedir }}/docker-mailman"
 #     state: absent
 #   when: config_mailcow.changed
 
 # - name: "start {{ servicename }} (mailman) docker"
-#   docker_compose:
+#   community.docker.docker_compose_v2:
 #     project_src: "{{ basedir }}/docker-mailman"
 #     state: present
diff --git a/webserver/docker_matrix/tasks/main.yml b/webserver/docker_matrix/tasks/main.yml
index c3f42d07bbce36ba4b11e67f3081f823e23c67c5..27dc2fdaa156cef1d9699c849984ec3bff03650d 100644
--- a/webserver/docker_matrix/tasks/main.yml
+++ b/webserver/docker_matrix/tasks/main.yml
@@ -54,12 +54,12 @@
 
 
 - name: stop matrix docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/matrix/
     state: absent
   when: configs.changed
 
 - name: start matrix docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/matrix/
     state: present
diff --git a/webserver/docker_matterbridge/tasks/main.yml b/webserver/docker_matterbridge/tasks/main.yml
index 08b5520d67cd62ff425616efab90e006b907fbf2..b22fb98f95540f4b91e9daf91533fc2ea273b91f 100644
--- a/webserver/docker_matterbridge/tasks/main.yml
+++ b/webserver/docker_matterbridge/tasks/main.yml
@@ -50,7 +50,7 @@
     dest: "/srv/matterbridge/docker-compose.yml"
   
 - name: start matterbridge docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/matterbridge/
     state: present
   
diff --git a/webserver/docker_vpnserver/tasks/main.yml b/webserver/docker_vpnserver/tasks/main.yml
index 9d49fd746bc4d77da71b6599217a0425a81e6031..f5db7127b2ba3a44a88ce4298e37ce10d0a215ff 100644
--- a/webserver/docker_vpnserver/tasks/main.yml
+++ b/webserver/docker_vpnserver/tasks/main.yml
@@ -25,13 +25,13 @@
 
 
 - name: "stop {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: absent
   when: config.changed
 
 
 - name: "start {{ servicename }} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: "{{ basedir }}"
     state: present
diff --git a/webserver/docker_warpapi/tasks/main.yml b/webserver/docker_warpapi/tasks/main.yml
index dbda040c910feefc0350690ddcebf9222f277da9..84ea8f06ecbdcbc5fab8d07219b1e455e085b4ac 100644
--- a/webserver/docker_warpapi/tasks/main.yml
+++ b/webserver/docker_warpapi/tasks/main.yml
@@ -36,6 +36,6 @@
     dest: "/srv/warpapi/docker-compose.yml"
 
 - name: start warpapi docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/warpapi/
     state: present
diff --git a/webserver/docker_wordpress/tasks/main.yml b/webserver/docker_wordpress/tasks/main.yml
index bb3b77f7eed0ef468a552265f7081e07cae60665..0f207950a08fce9bd0b9232f3dd7500b250c343b 100644
--- a/webserver/docker_wordpress/tasks/main.yml
+++ b/webserver/docker_wordpress/tasks/main.yml
@@ -29,6 +29,6 @@
     - data/wp-content/plugins/wz-status/wz-status.php
 
 - name: start wordpress docker
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/wordpress/
     state: present
diff --git a/webserver/docker_workadventure/tasks/main.yml b/webserver/docker_workadventure/tasks/main.yml
index af8e009cca6559323cb26dac50d14f3cc7f0c9bf..2e494a4b3b7479203eabad4ea1d84eaca39078f5 100644
--- a/webserver/docker_workadventure/tasks/main.yml
+++ b/webserver/docker_workadventure/tasks/main.yml
@@ -24,12 +24,12 @@
   register: config
 
 - name: "stop {{servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/{{servicename}}/
     state: absent
   when: config.changed
 
 - name: "start {{servicename}} docker"
-  docker_compose:
+  community.docker.docker_compose_v2:
     project_src: /srv/{{servicename}}/
     state: present