diff --git a/ansible/clouditor/Makefile b/ansible/clouditor/Makefile
index 64ed440e2a6dccfa59d9f08a54ed9ff23eecf2ea..42a887c081f5e31c20fd01d77b5859d1d5eec95a 100644
--- a/ansible/clouditor/Makefile
+++ b/ansible/clouditor/Makefile
@@ -1,2 +1,9 @@
+build:
+	go install google.golang.org/protobuf/cmd/protoc-gen-go \
+		google.golang.org/grpc/cmd/protoc-gen-go-grpc \
+		github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \
+		github.com/googleapis/gnostic/apps/protoc-gen-openapi
+	go generate ./... && go build ./...
+
 run:
-	cd clouditor && go run cmd/engine/engine.go --db-in-memory
\ No newline at end of file
+	go run cmd/engine/engine.go --db-in-memory
\ No newline at end of file
diff --git a/ansible/provision-clouditor.yml b/ansible/provision-clouditor.yml
index be610251203edc0b2816ce26c0e35fdf9fb9876a..ca5ffe40a78f357972c85b7316cbfd38c55033e2 100644
--- a/ansible/provision-clouditor.yml
+++ b/ansible/provision-clouditor.yml
@@ -9,6 +9,7 @@
             - gcc
             - wget
             - make
+            - protobuf-compiler
           state: present
         become: yes
       - name: Download Golang installer
@@ -26,10 +27,18 @@
         git:
           repo: https://github.com/clouditor/clouditor.git
           dest: /home/vagrant/clouditor
+          force: yes
+          version: v1.3.9
       - name: Copy Makefile
         copy:
           src: ./clouditor/Makefile
-          dest: ~/Makefile
+          dest: /home/vagrant/clouditor/Makefile
+      - name: Build Clouditor
+        make:
+          chdir: /home/vagrant/clouditor
+          target: build
+        environment:
+          PATH: "{{ ansible_env.PATH }}:/home/vagrant/.go/bin:/home/vagrant/go/bin"
       - name: Create Clouditor log file
         file:
           path: /var/log/clouditor.log
@@ -39,7 +48,7 @@
         become: yes
       - name: Run Clouditor in background
         shell:
-          chdir: ~/clouditor
+          chdir: /home/vagrant/clouditor
           executable: /bin/bash
           cmd: "(nohup ~/.go/bin/go run cmd/engine/engine.go --db-in-memory </dev/null >/var/log/clouditor.log 2>&1 & sleep 1)"
           # see https://ansibledaily.com/execute-detached-process-with-ansible/
\ No newline at end of file