diff --git a/.gitlab-ci/lint.yml b/.gitlab-ci/lint.yml
index 5e4b81abb0b03cc20c339b51c49da8461166bdd7..2f96fec5fa2d2c1a95a667993e78f4cf30cd981d 100644
--- a/.gitlab-ci/lint.yml
+++ b/.gitlab-ci/lint.yml
@@ -89,6 +89,14 @@ markdownlint:
   script:
     - markdownlint $(find . -name '*.md' | grep -vF './.git') --ignore docs/_sidebar.md --ignore contrib/dind/README.md
 
+generate-sidebar:
+  extends: .job
+  stage: unit-tests
+  tags: [light]
+  script:
+    - scripts/gen_docs_sidebar.sh
+    - git diff --exit-code
+
 check-readme-versions:
   stage: unit-tests
   tags: [light]
diff --git a/scripts/gen_docs_sidebar.sh b/scripts/gen_docs_sidebar.sh
index c7e0d29bf3bc069bc6fd20ee9ba3df44b2eab821..35379dbea3faf8389c7396fedd11a91b5ee3c99b 100755
--- a/scripts/gen_docs_sidebar.sh
+++ b/scripts/gen_docs_sidebar.sh
@@ -8,6 +8,8 @@
 # The script will ignore any files that are not markdown files.
 # Usage: bash scripts/gen_docs_sidebar.sh > docs/_sidebar.md
 
+export LANG=C
+{
 echo "* [Readme](/)"
 
 for folder in $(find docs/*/ | sort -f); do
@@ -29,3 +31,4 @@ for folder in $(find docs/*/ | sort -f); do
     done
   fi
 done
+} > docs/_sidebar.md