diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5108366b5583299331e599fb26de9239421d7647..8e1896b6736a6474cdd4c304cdbed589f4139299 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,5 +1,5 @@
 default:
-  image: python:3.12-slim
+  image: python:3.12-bullseye
 
 workflow:
   rules:
@@ -12,6 +12,7 @@ variables:
   PIP_CACHE_DIR: "${CI_PROJECT_DIR}/.cache/pip"
   PIP_INDEX_URL: "https://__token__:${CI_JOB_TOKEN}@gitlab.com/api/v4/projects/${CI_PROJECT_ID}/packages/pypi/simple"
   PIP_EXTRA_INDEX_URL: "https://pypi.org/simple"
+  CXX: "/usr/bin/g++"
 
 stages:
   - build
@@ -20,6 +21,8 @@ stages:
 
 build_package:
   stage: build
+  before_script:
+  - apt-get update && apt-get install -y g++ make build-essential cmake
   script:
     - pip install --upgrade pip
     - pip install setuptools wheel build
@@ -54,6 +57,7 @@ build_and_push_docker_image:
     DOCKER_TLS_CERTDIR: "/certs"
   before_script:
     - echo "${CI_REGISTRY_PASSWORD}" | docker login -u "${CI_REGISTRY_USER}" --password-stdin ${CI_REGISTRY}
+    - apt-get update && apt-get install -y g++ make build-essential cmake
   script:
     - echo "Building docker image and tagging as latest"
     - docker pull ${DOCKER_IMAGE_NAME}:latest || true