diff --git a/.gitlab/ci/build.yml b/.gitlab/ci/build.yml
index 26257086eabdf9cfeba5d83d040bd42b50cbd365..510859c158401230cc182996b20b1eb1e9a7e4ef 100644
--- a/.gitlab/ci/build.yml
+++ b/.gitlab/ci/build.yml
@@ -119,3 +119,17 @@ Make Detect Secrets:
       - detect-secrets/**/*
   except:
     - schedules
+
+Make dotnet-build-server:
+  stage: build
+  tags:
+    - linux
+    - dockerd
+  script:
+    - make dotnet
+  only:
+    changes:
+      - dotnet-build-server/*
+      - dotnet-build-server/**/*
+
+
diff --git a/.gitlab/ci/publish.yml b/.gitlab/ci/publish.yml
index 3d5d74f684815babd375a6e1299874e356ea28eb..c03e3b0cfbe71641ec02960355116e42977667d6 100644
--- a/.gitlab/ci/publish.yml
+++ b/.gitlab/ci/publish.yml
@@ -133,3 +133,17 @@ Publish Detect Secrets:
       - detect-secrets/**/*
   except:
     - schedules
+
+Publish dotnets:
+  <<: *push_to_registry
+  variables:
+    IMG_NAME: "dotnet-build-server"
+  needs: ["Make dotnet-build-server"]
+  only:
+    refs:
+      - master
+    changes:
+      - dotnet-build-server/*
+      - dotnet-build-server/**/*
+  except:
+    - schedules