diff --git a/alfa-client/apps/alfa-e2e/Jenkinsfile b/alfa-client/apps/alfa-e2e/Jenkinsfile
index 4bcfb93a754d678ebdecd7f15832df66360ebcb2..7d5d23524fb56c50e0b0899ec292c24872b09886 100644
--- a/alfa-client/apps/alfa-e2e/Jenkinsfile
+++ b/alfa-client/apps/alfa-e2e/Jenkinsfile
@@ -218,11 +218,12 @@ pipeline {
                         catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
                             script {
                                 def bezeichner = env.EA_BEZEICHNER
-                                def dbPort = 27018
 
-                                forwardServices(generateNamespace(bezeichner), dbPort)
+                                Integer mongoDbPort = forwardMongoDbPort(generateNamespace(bezeichner))
 
-                                runTests(bezeichner, 'einheitlicher-ansprechpartner', 'user-ea', dbPort, env.STAGE_NAME)
+                                runTests(bezeichner, 'einheitlicher-ansprechpartner', 'user-ea', mongoDbPort, env.STAGE_NAME)
+
+                                stopForwardMongoDbPort(generateNamespace(bezeichner))
                             }
                         }
                     }
@@ -242,17 +243,18 @@ pipeline {
 
                 stage('E2E-Main') {
                     when {
-                        expression { SKIP_RUN }
+                        expression { !SKIP_RUN }
                     }
                     steps {
                         catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
                             script {
                                 def bezeichner = env.MAIN_BEZEICHNER
-                                def dbPort = 27019
 
-                                forwardServices(generateNamespace(bezeichner), dbPort)
+                                Integer mongoDbPort = forwardMongoDbPort(generateNamespace(bezeichner))
 
-                                runTests(bezeichner, 'main-tests', 'user-main', dbPort, env.STAGE_NAME)
+                                runTests(bezeichner, 'main-tests', 'user-main', mongoDbPort, env.STAGE_NAME)
+
+                                stopForwardMongoDbPort(generateNamespace(bezeichner))
                             }
                         }
                     }
@@ -772,16 +774,39 @@ Map getElasticsearchEnv(String namespace) {
         ]
 }
 
-Void forwardServices(String namespace, Integer dbPort) {
+Void forwardMongoDbPort(String namespace) {
     try {
-        forwardDatenbank(namespace, dbPort)
+        def minPort = 20000
+        def portRange = 20000
+        //def dbPort = "${Math.abs(new Random().nextInt(portRange+1))+minPort}" as Integer
+        def dbPort = Math.abs(new Random().nextInt(portRange+1))+minPort
+
+        echo "Forwarding MongoDB Port to local port ${dbPort}"
+
+        def pidFile = generateMongoDbPortForwardPidFile(namespace)
+        
+        sh "kubectl port-forward ozg-mongodb-0 ${dbPort}:27017 -n ${namespace} & echo \$! > ${pidFile}"
+
+        return dbPort
     }
     catch (Exception e) {
-        echo "forwardServices Exception: ${e}"
+        echo "forwardMongoDbPort Exception: ${e}"
         error("Error forwarding service")
     }
 }
 
+Void stopForwardMongoDbPort(String namespace) {
+    echo "Removing forwarding MongoDB Port to local port for ${namespace}"
+    def pidFile = generateMongoDbPortForwardPidFile(namespace)
+    dir('alfa-client/apps/alfa-e2e/src/jenkins-build-files') {
+        sh "./kill-pid-by-filename.sh ${pidFile}"
+    }
+}
+
+Void generateMongoDbPortForwardPidFile(String namespace) {
+    return "/tmp/pid_file_mongodb_port_forward_${namespace}.pid"
+}
+
 Void forwardElasticSearch() {
     if(!isElasticSearchForwarded()) {
         sh "kubectl port-forward ozg-search-cluster-es-ozg-search-0 9200:9200 -n elastic-system &"
@@ -792,10 +817,6 @@ Boolean isElasticSearchForwarded() {
     return sh (script: "lsof -i -P -n | grep LISTEN | grep :9200", returnStatus: true) == env.SH_SUCCESS_STATUS_CODE as Integer
 }
 
-Void forwardDatenbank(String namespace, port) {
-    sh "kubectl port-forward ozg-mongodb-0 ${port}:27017 -n ${namespace} &"
-}
-
 String generateNamespace(String bezeichner) {
     return "${env.BUNDESLAND}-${bezeichner}-dev"
 }