diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4618c3bc209c2173a9952c3d08acf60de5113085..19e39390698bde9feb0ba2b750dddf3e415ce8c8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -8,7 +8,9 @@ test:
 build:
   stage: build
   script:
-  - GOOS=freebsd go build -o invinoveritas
+  - commitHash=$(git rev-parse HEAD)
+  - now=$(date +%Y-%m-%d-%T)
+  - GOOS=freebsd go build -trimpath -tags "netgo osusergo timetzdata" -ldflags "-X main.commitHash=$commitHash -X main.buildTime=$now" -o invinoveritas
   artifacts:
     paths:
     - invinoveritas
diff --git a/Makefile b/Makefile
index 2d490b9777d85d021f335140a86a3c412233c984..e9f91e63dd524aaa7115bd03f01e5244b3c54c2f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,2 +1,4 @@
 run:
-	find . -name '*.go' -or -name '*.tpl' -or -path 'static/*' | entr -d -r go run . -debug
+	find . -name '*.go' -or -name '*.tpl' -or -path 'static/*' | \
+		entr -d -r \
+		go run -ldflags "-X main.commitHash=$(shell git rev-parse HEAD) -X main.buildTime=$(shell /bin/date +%Y-%m-%d-%T)" . -debug
diff --git a/main.go b/main.go
index 552268f3783c385527baf5e77f3ecca2c24a7577..b4f609691a5c94f1cc26e478cae1c291fe195d0d 100644
--- a/main.go
+++ b/main.go
@@ -26,6 +26,12 @@ var templateFS embed.FS
 //go:embed static/*
 var staticFS embed.FS
 
+// Build info. Will be set by Gitlab pipeline.
+var (
+	commitHash string
+	buildTime  string
+)
+
 func httpError(w http.ResponseWriter, r *http.Request, msg string, err error, status int) {
 	if err != nil {
 		msg += ": " + err.Error()
@@ -128,6 +134,9 @@ func main() {
 
 	logger = level.NewFilter(logger, filter)
 
+	level.Info(logger).
+		Log("commit_hash", commitHash, "buildTime", buildTime)
+
 	db, err := openDB(*dbPath, logger)
 	if err != nil {
 		logger.Log("error", err, "msg", "can't open DB")
@@ -140,9 +149,9 @@ func main() {
 
 	err = initDB(ctx, db)
 	if err != nil {
-		logger.Log("wal_name", ql.WalName(*dbPath+".ql"),
-			"error", err,
-			"msg", "can't initalize DB")
+		level.Error(logger).
+			Log("wal_name", ql.WalName(*dbPath+".ql"),
+				"error", err, "msg", "can't initalize DB")
 		os.Exit(1)
 	}