diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 15bf2cbc470c53d3d383e71f6c1da162a84de920..eb26dc0093b662b1e494453ed1fff0a905f2b144 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,31 +1,46 @@
 ---
 before_script:
+  - . /duneci/bin/duneci-init-job
   - duneci-install-module https://gitlab.dune-project.org/core/dune-common.git
 
-debian:10  gcc:c++17:
-  image: duneci/base:10
+debian:10 gcc-8-noassert-17:
+  image: registry.dune-project.org/docker/ci/debian:10
   script: duneci-standard-test
-  variables: {DUNECI_OPTS: /duneci/opts.gcc.c++17}
+  variables:
+    DUNECI_TOOLCHAIN: gcc-8-noassert-17
   tags: [duneci]
 
-debian:9--gcc:
-  image: duneci/base:9
+debian:10 clang-6-libcpp-17:
+  image: registry.dune-project.org/docker/ci/debian:10
   script: duneci-standard-test
+  variables:
+    DUNECI_TOOLCHAIN: clang-6-libcpp-17
   tags: [duneci]
 
-debian:9--clang:
-  image: duneci/base:9
+debian:9 gcc-6-14:
+  image: registry.dune-project.org/docker/ci/debian:9
   script: duneci-standard-test
-  variables: {DUNECI_OPTS: /duneci/opts.clang}
+  variables:
+    DUNECI_TOOLCHAIN: gcc-6-14
   tags: [duneci]
 
-ubuntu:16.04--gcc:
-  image: duneci/base:16.04
+debian:9 clang-3.8-14:
+  image: registry.dune-project.org/docker/ci/debian:9
   script: duneci-standard-test
+  variables:
+    DUNECI_TOOLCHAIN: clang-3.8-14
   tags: [duneci]
 
-ubuntu:16.04--clang:
-  image: duneci/base:16.04
+ubuntu:16.04 gcc-5-14:
+  image: registry.dune-project.org/docker/ci/ubuntu:16.04
   script: duneci-standard-test
-  variables: {DUNECI_OPTS: /duneci/opts.clang}
+  variables:
+    DUNECI_TOOLCHAIN: gcc-5-14
+  tags: [duneci]
+
+ubuntu:18.04 clang-6-17:
+  image: registry.dune-project.org/docker/ci/ubuntu:18.04
+  script: duneci-standard-test
+  variables:
+    DUNECI_TOOLCHAIN: clang-6-17
   tags: [duneci]