diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index a53c2750a1cc417c232370a5fcc08d32893c4ea1..0ab72ba222849c35dab62eb890cd0a8ce9496bb3 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -9,7 +9,7 @@ stages:
   - package-helm-chart
   - release-helm-chart
 
-image: node:14-alpine
+image: node:18-alpine
 
 variables:
   CHART_NAME: stackspin-dashboard
@@ -19,6 +19,7 @@ build-project:
   stage: build-project
   before_script: []
   script:
+    - cd frontend
     - echo "Building app"
     - yarn install
     - echo "REACT_APP_API_URL=/api/v1" > .env
@@ -30,7 +31,7 @@ build-project:
     expire_in: 1 hour
     name: web-build
     paths:
-      - web-build
+      - frontend/web-build
 
 .kaniko-build:
   script:
@@ -39,7 +40,7 @@ build-project:
     - export CONTAINER_TAG=${CI_COMMIT_TAG:-${CI_COMMIT_REF_SLUG}}
     - /kaniko/executor --cache=true --context ${CI_PROJECT_DIR}/${DIRECTORY} --destination ${CI_REGISTRY_IMAGE}/${KANIKO_BUILD_IMAGENAME}:${CONTAINER_TAG}
 
-build-fontend-container:
+build-frontend-container:
   stage: build-container
   image:
     # We need a shell to provide the registry credentials, so we need to use the
@@ -48,7 +49,7 @@ build-fontend-container:
     entrypoint: [""]
   variables:
     KANIKO_BUILD_IMAGENAME: dashboard
-    DIRECTORY: web-build
+    DIRECTORY: frontend/web-build
   before_script:
     - cp deployment/Dockerfile $DIRECTORY
     - cp deployment/nginx.conf $DIRECTORY