diff --git a/.gitlab/ci/common.gitlab-ci.yml b/.gitlab/ci/common.gitlab-ci.yml
index 34a3e54c52f6228940193f1f0aff395adf73cbc4..35b2a034bd0f54d9902306c3796ecd9d8bdb8984 100644
--- a/.gitlab/ci/common.gitlab-ci.yml
+++ b/.gitlab/ci/common.gitlab-ci.yml
@@ -68,15 +68,24 @@
     -   docker buildx create --use --driver-opt="image=${BUILDKIT_IMAGE}"
     - fi
 
+.dind:
+  variables:
+    DOCKER_MIRROR: https://mirror.gcr.io
+    DOCKER_OPTIONS: "--registry-mirror ${DOCKER_MIRROR}"
+    DOCKER_DRIVER: overlay2
+    DOCKER_HOST: tcp://docker:2375
+  services:
+  - name: docker:${DOCKER_VERSION}-dind
+    alias: docker
+    entrypoint: [ "sh", "-c", "dockerd-entrypoint.sh $DOCKER_OPTIONS" ]
+
 # Used to override the default storage driver from overlay2
 # to the containerd image store for image size optimization
 # https://gitlab.com/gitlab-org/cloud-native/distroless/ubi/-/issues/52
 .containerd-storage: &containerd-storage
-  services:
-  - name: docker:${DOCKER_VERSION}-dind
-    variables:
-      TEST_INTEGRATION_USE_SNAPSHOTTER: "true"
+  extends: .dind
   variables:
+    TEST_INTEGRATION_USE_SNAPSHOTTER: "true"
     DOCKER_DRIVER: overlayfs
 
 .job-base: &job-base
diff --git a/.gitlab/ci/images.gitlab-ci.yml b/.gitlab/ci/images.gitlab-ci.yml
index fa9f9e518b64dad4276fb85e304b384cfdd592ea..ba6d835a81018b6df21cee4e763450204eea42f7 100644
--- a/.gitlab/ci/images.gitlab-ci.yml
+++ b/.gitlab/ci/images.gitlab-ci.yml
@@ -90,11 +90,7 @@ image-metrics:
 .sync-images:
   image: "${CI_REGISTRY}/${CI_TOOLS_NAMESPACE}/gitlab-omnibus-builder/distribution_ci_tools:${CI_TOOLS_VERSION}"
   retry: 2
-  variables:
-    DOCKER_DRIVER: overlay2
-    DOCKER_HOST: tcp://docker:2375
-  services:
-    - docker:${DOCKER_VERSION}-dind
+  extends: .dind
   allow_failure: false
   script:
     - cat artifacts/images/*.txt > image_versions.txt
diff --git a/ci_files/variables.yml b/ci_files/variables.yml
index 8c76331f60422ab6b1b63d302c29fa42de81ee2f..f9d68fd89aae28d345c4a6eba1e9b7c548a91835 100644
--- a/ci_files/variables.yml
+++ b/ci_files/variables.yml
@@ -5,15 +5,15 @@ variables:
   UBI_MICRO_IMAGE: registry.access.redhat.com/ubi9/ubi-micro:9.5
   ALPINE_IMAGE: alpine:3.15
   GITLAB_ELASTICSEARCH_INDEXER_VERSION: v5.4.0
-  GITLAB_VERSION: v17.9.3-jh
-  GITLAB_REF_SLUG: v17.9.3-jh
-  GITLAB_ASSETS_TAG: v17-9-3-jh
+  GITLAB_VERSION: v17.9.4-jh
+  GITLAB_REF_SLUG: v17.9.4-jh
+  GITLAB_ASSETS_TAG: v17-9-4-jh
   GITLAB_EXPORTER_VERSION: 15.2.0
   GITLAB_SHELL_VERSION: v14.40.0
   GITLAB_CONTAINER_REGISTRY_VERSION: v4.15.2-gitlab
-  GITALY_SERVER_VERSION: v17.9.3
-  GITLAB_PAGES_VERSION: v17.9.3
-  GITLAB_KAS_VERSION: v17.9.3
+  GITALY_SERVER_VERSION: v17.9.4
+  GITLAB_PAGES_VERSION: v17.9.4
+  GITLAB_KAS_VERSION: v17.9.4
   MAILROOM_VERSION: 0.0.27
   GITLAB_ZOEKT_WEBSERVER_VERSION: v0.1.0-b8ea9
   GITLAB_ZOEKT_DYNAMIC_INDEXSERVER_VERSION: v0.1.0-b8ea9
diff --git a/docs/build.md b/docs/build.md
index d433feffd60ca0dc212b888652dd20c54dc04ed5..cf9ea4b403d8c59736587ea60e7083b776f242ed 100644
--- a/docs/build.md
+++ b/docs/build.md
@@ -18,11 +18,9 @@ While investigating final image size reduction in [cloud-native/distroless/ubi#1
 
 ```
 .containerd-storage: &containerd-storage
-  services:
-  - name: docker:${DOCKER_VERSION}-dind
-    variables:
-      TEST_INTEGRATION_USE_SNAPSHOTTER: "true"
+  extends: .dind
   variables:
+    TEST_INTEGRATION_USE_SNAPSHOTTER: "true"
     DOCKER_DRIVER: overlayfs
 ```