diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4979d9b13632108d9322c2feca329d178cd19ec1..a94c749facd960dfc96eb780e04bd217bb736c07 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,10 @@
+# [5.4.0](https://gitlab.com/to-be-continuous/docker/compare/5.3.1...5.4.0) (2023-09-22)
+
+
+### Features
+
+* **publish:** support extra tags ([b78c4e6](https://gitlab.com/to-be-continuous/docker/commit/b78c4e6a0ed7b84c8d4d568e3bca788c4695a33b))
+
 ## [5.3.1](https://gitlab.com/to-be-continuous/docker/compare/5.3.0...5.3.1) (2023-09-19)
 
 
diff --git a/README.md b/README.md
index 6e6478b9e3cf3fe03a0d13f66ac7708fddb897c6..fff118cec2a6008e77026026ff44ab2073310b06 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@ In order to include this template in your project, add the following to your `.g
 ```yaml
 include:
   - project: 'to-be-continuous/docker'
-    ref: '5.3.1'
+    ref: '5.4.0'
     file: '/templates/gitlab-ci-docker.yml'
 ```
 
@@ -521,7 +521,7 @@ Here is a `.gitlab-ci.yaml` using an external Docker registry:
 ```yaml
 include:
   - project: 'to-be-continuous/docker'
-    ref: '5.3.1'
+    ref: '5.4.0'
     file: '/templates/gitlab-ci-docker.yml'
 
 variables:
@@ -539,7 +539,7 @@ Here is a `.gitlab-ci.yaml` that builds 2 Docker images from the same project (u
 ```yaml
 include:
   - project: 'to-be-continuous/docker'
-    ref: '5.3.1'
+    ref: '5.4.0'
     file: '/templates/gitlab-ci-docker.yml'
 
 variables:
@@ -597,11 +597,11 @@ With:
 include:
   # main template
   - project: 'to-be-continuous/docker'
-    ref: '5.3.1'
+    ref: '5.4.0'
     file: '/templates/gitlab-ci-docker.yml'
   # Vault variant
   - project: 'to-be-continuous/docker'
-    ref: '5.3.1'
+    ref: '5.4.0'
     file: '/templates/gitlab-ci-docker-vault.yml'
 
 variables:
diff --git a/templates/gitlab-ci-docker-gcp.yml b/templates/gitlab-ci-docker-gcp.yml
index df48aefdba45712a27b0519ae87b539e81cbdc3f..7ad3bd8a6fa32536e1660ec3786eb3b87e89299c 100644
--- a/templates/gitlab-ci-docker-gcp.yml
+++ b/templates/gitlab-ci-docker-gcp.yml
@@ -8,7 +8,7 @@ variables:
 .docker-base:
   services:
     - name: "$TBC_TRACKING_IMAGE"
-      command: ["--service", "docker", "5.3.1"]
+      command: ["--service", "docker", "5.4.0"]
     - name: "$TBC_GCP_AUTH_PROVIDER"
       alias: "gcp-auth-provider"
   variables:
diff --git a/templates/gitlab-ci-docker-vault.yml b/templates/gitlab-ci-docker-vault.yml
index d29f3af966139a6f4184f708595a60d1063455b1..6e15d0984b93c44d4d4ba9276829974db1e483c7 100644
--- a/templates/gitlab-ci-docker-vault.yml
+++ b/templates/gitlab-ci-docker-vault.yml
@@ -12,7 +12,7 @@ variables:
 .docker-base:
   services:
     - name: "$TBC_TRACKING_IMAGE"
-      command: ["--service", "docker", "5.3.1"]
+      command: ["--service", "docker", "5.4.0"]
     - name: "$TBC_VAULT_IMAGE"
       alias: "vault-secrets-provider"
   variables:
diff --git a/templates/gitlab-ci-docker.yml b/templates/gitlab-ci-docker.yml
index bae88559198049ba70051f1760871aea502062ea..a5eea29add2a598c7eb49c686d6f66b910c9db47 100644
--- a/templates/gitlab-ci-docker.yml
+++ b/templates/gitlab-ci-docker.yml
@@ -475,7 +475,7 @@ stages:
 .docker-base:
   services:
     - name: "$TBC_TRACKING_IMAGE"
-      command: ["--service", "docker", "5.3.1"]
+      command: ["--service", "docker", "5.4.0"]
   before_script:
     - *docker-scripts
 
@@ -508,7 +508,7 @@ stages:
     _TRACE: "${TRACE}"
   services:
     - name: "$TBC_TRACKING_IMAGE"
-      command: ["--service", "docker", "5.3.1"]
+      command: ["--service", "docker", "5.4.0"]
     - name: $DOCKER_DIND_IMAGE
       alias: docker
       command: