diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f2b5cc3b6cf1f7a4a1ba72625f03bd88e247e60f..bfa97897bd4b120d43990ffd03f8ee599521b2ef 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,7 +2,7 @@ variables:
   GIT_SSL_NO_VERIFY: "1"
 
   # Commit of ghc/ci-images repository from which to pull Docker images
-  DOCKER_REV: 3f731f5d37a156e7ebe10cd32656946083baaf4a
+  DOCKER_REV: 6223fe0b5942f4fa35bdec92c74566cf195bfb42
 
   # Sequential version number capturing the versions of all tools fetched by
   # .gitlab/ci.sh.
diff --git a/.gitlab/ci.sh b/.gitlab/ci.sh
index d3e922ff86358d12b532e67b841bfea5bf9181f0..6e1c6b0e8106a1a08a8639fc8812cdea68809eaa 100755
--- a/.gitlab/ci.sh
+++ b/.gitlab/ci.sh
@@ -26,6 +26,9 @@ LT_CYAN="1;36"
 WHITE="1;37"
 LT_GRAY="0;37"
 
+export LANG=C.UTF-8
+export LC_ALL=C.UTF-8
+
 # GitLab Pipelines log section delimiters
 # https://gitlab.com/gitlab-org/gitlab-foss/issues/14664
 start_section() {
diff --git a/docs/users_guide/compare-flags.py b/docs/users_guide/compare-flags.py
index 5b588d99e06100a829534605d364d9898d13b507..5f0a1c9741e7a72a7ff95a4d9d2f325d84da6d29 100755
--- a/docs/users_guide/compare-flags.py
+++ b/docs/users_guide/compare-flags.py
@@ -62,7 +62,7 @@ def main() -> None:
     parser = argparse.ArgumentParser()
     parser.add_argument('--ghc', type=argparse.FileType('r'),
                         help='path of GHC executable')
-    parser.add_argument('--doc-flags', type=argparse.FileType('r'),
+    parser.add_argument('--doc-flags', type=argparse.FileType(mode='r', encoding='UTF-8'),
                         help='path of ghc-flags.txt output from Sphinx')
     args = parser.parse_args()