diff --git a/scripts/ci/jobs/jupyter.yml b/scripts/ci/jobs/jupyter.yml
index 8cfcba7e5f155c62f6650b53c4af6b5db704fcc3..4d080aa9d6c3ca4904394754c79fa5a77f8eeb1e 100644
--- a/scripts/ci/jobs/jupyter.yml
+++ b/scripts/ci/jobs/jupyter.yml
@@ -9,10 +9,12 @@ build jupyter:
     - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
     - >
       if [[ "$CI_COMMIT_BRANCH" == "master" ]] ; then
-        export DOCKER_TAG_JUPYTER="$CI_REGISTRY/ogs/$CI_PROJECT_NAME/ogs-serial-jupyter:latest"
+        export DOCKER_TAG_JUPYTER="$CI_REGISTRY/ogs/$CI_PROJECT_NAME/ogs-serial-jupyter"
+        export DOCKER_TAG_JUPYTER_PETSC="$CI_REGISTRY/ogs/$CI_PROJECT_NAME/ogs-petsc-jupyter"
         export ON_MASTER_ARGS="--upload -C"
       else
-        export DOCKER_TAG_JUPYTER="ci-$CI_PROJECT_NAME-$CI_COMMIT_BRANCH-jupyter"
+        export DOCKER_TAG_JUPYTER="ci-$CI_PROJECT_NAME-$CI_COMMIT_BRANCH-serial-jupyter"
+        export DOCKER_TAG_JUPYTER_PETSC="ci-$CI_PROJECT_NAME-$CI_COMMIT_BRANCH-petsc-jupyter"
       fi
     # Jupyter container
     - >
@@ -24,6 +26,16 @@ build jupyter:
       --runtime_base_image 'jupyter/base-notebook'
       --tag $DOCKER_TAG_JUPYTER
       $ON_MASTER_ARGS
+    - >
+      poetry run ogscm compiler.py mpi.py ogs.py ogs_jupyter.py -B -R --ogs ../..
+      --build_args ' --progress=plain'
+      --cvode --ccache --mfront
+      --cpu-target $CPU_TARGET
+      --cmake_args ' -DOGS_CPU_ARCHITECTURE=OFF -DOGS_BUILD_TESTING=OFF'
+      --runtime_base_image 'jupyter/base-notebook'
+      --mpi_no_entrypoint
+      --tag $DOCKER_TAG_JUPYTER_PETSC
+      $ON_MASTER_ARGS
     - cd $CI_PROJECT_DIR
     # execute notebooks in container
     - >