diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 04f6317f9e12db632e8d29d6a9d2f6e20c8bae0d..33a476b0601ba5674dd6d9611eb1a75228605795 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,7 +7,7 @@ variables:
 
 black:
   needs: []
-  image: python:3.10
+  image: python:3.12
   stage: test
   script:
     - python -m pip install --upgrade pip
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index ea4c7e312c180f3637df134c6a65c79bbddb6d96..63f015dad043c79d166a88e2009471a3e2110e1b 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -5,4 +5,4 @@ repos:
     hooks:
       - id: black
         args: [--config=./pyproject.toml]
-        language_version: python3.10 # same as CI and Dockerfile
+        language_version: python3.12 # same as CI and Dockerfile
diff --git a/src/InSillyCloWeb/Dockerfile b/src/InSillyCloWeb/Dockerfile
index a2d9532f08a352010fc386263b6fc93aed4fd5b9..48ec331685a1edc69aa291a151c8d4033f455a2f 100644
--- a/src/InSillyCloWeb/Dockerfile
+++ b/src/InSillyCloWeb/Dockerfile
@@ -1,4 +1,4 @@
-FROM python:3.10-slim
+FROM python:3.12-slim
 ENV PYTHONUNBUFFERED=1
 
 EXPOSE 8086