diff --git a/.gitlab/.hooks/pre-commit b/.gitlab/.hooks/pre-commit
new file mode 100755
index 0000000000000000000000000000000000000000..ffdf21be2bc37605f0bb07d4586337acba585155
--- /dev/null
+++ b/.gitlab/.hooks/pre-commit
@@ -0,0 +1,15 @@
+#!/bin/bash
+BRANCH=$(git rev-parse --abbrev-ref HEAD)
+if [[ "$BRANCH" == "master" ]]; then
+  echo "Running pre-commit hook..."
+  make gen-swagger-doc
+  cp ./dbrepo-metadata-db/1_setup-schema.sql ./.docker/config
+  cp ./dbrepo-metadata-db/2_setup-data.sql ./.docker/config
+  cp ./dbrepo-broker-service/rabbitmq.conf ./.docker/config
+  cp ./dbrepo-broker-service/enabled_plugins ./.docker/config
+  cp ./dbrepo-broker-service/definitions.json ./.docker/config
+  cp ./dbrepo-broker-service/advanced.config ./.docker/config
+  cp ./dbrepo-storage-service/s3_config.json ./.docker/config
+  cp ./dbrepo-gateway-service/dbrepo.conf ./.docker/config
+  cd ./.docker && tar czf ./dist.tar.gz ./docker-compose.yml ./.env ./config
+fi