diff --git a/scripts/jenkins/gcc.groovy b/scripts/jenkins/gcc.groovy
index 788193ea703c13595ed5951b7f9654277a075f1c..fcb27cec2f61268f94cba9a5b82a8323630ccc6a 100644
--- a/scripts/jenkins/gcc.groovy
+++ b/scripts/jenkins/gcc.groovy
@@ -20,6 +20,9 @@ def helper = new ogs.helper()
 def image = docker.image('ogs6/gcc-gui:latest')
 image.pull()
 image.inside(defaultDockerArgs) {
+    stage('Install prerequisites Web') {
+        sh 'cd ogs/web && yarn && sudo -H pip install -r requirements.txt'
+    }
     stage('Configure (Linux-Docker)') {
         configure.linux(cmakeOptions: defaultCMakeOptions, script: this)
     }
@@ -32,6 +35,10 @@ image.inside(defaultDockerArgs) {
         build.linux(script: this, target: 'tests ctest')
     }
 
+    stage('Web (Linux-Docker)') {
+        build.linux(script: this, target: 'web')
+    }
+
     stage('Data Explorer (Linux-Docker)') {
         configure.linux(
             cmakeOptions: defaultCMakeOptions + guiCMakeOptions,
@@ -45,5 +52,8 @@ image.inside(defaultDockerArgs) {
 stage('Post (Linux-Docker)') {
     post.publishTestReports 'build/Testing/**/*.xml', 'build/Tests/testrunner.xml',
         'ogs/scripts/jenkins/clang-log-parser.rules'
+    publishHTML(target: [allowMissing: false, alwaysLinkToLastBuild: false,
+        keepAll: false, reportDir: 'ogs/web/public', reportFiles: 'index.html',
+        reportName: 'Web'])
     post.cleanup()
 }