diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fca1533976035d8df8ec6a37648616156cc347fb..8929b266e9bf9595876b07316bcbade972de6e72 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -2,7 +2,7 @@ variables:
   GOSDN_IMAGE: "${CI_REGISTRY_IMAGE}:${CI_COMMIT_SHA}"
   GOSDN_TESTING_IMAGE: "${CI_REGISTRY_IMAGE}:testing_${CI_COMMIT_SHA}"
   CEOS_IMAGE: "$CI_REGISTRY_IMAGE/ceos:latest"
-  GOLANG_VERSION: "1.16"
+  GOLANG_VERSION: "1.17"
 
 stages:
   - build
diff --git a/.gitlab/ci/.code-quality-ci.yml b/.gitlab/ci/.code-quality-ci.yml
index 3910d884c536da0059a8e09f41309fc4ae806eab..9a66d4a43c51a22d54fccdfa05ef6617e1a7d889 100644
--- a/.gitlab/ci/.code-quality-ci.yml
+++ b/.gitlab/ci/.code-quality-ci.yml
@@ -1,5 +1,5 @@
 code-quality:
-  image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/golangci/golangci-lint:latest-alpine
+  image: ${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/golangci/golangci-lint:v1.42-alpine
   stage: analyze
   script:
     # writes golangci-lint output to gl-code-quality-report.json
@@ -10,4 +10,3 @@ code-quality:
     paths:
       - gl-code-quality-report.json
   needs: []
-  
\ No newline at end of file
diff --git a/.gitlab/ci/.golangci-config/.golangci.yml b/.gitlab/ci/.golangci-config/.golangci.yml
index 1a2b9183717c0c1a95b8782e15a5189ee2059c10..e9ea64defdbb908d5d1892ff7f8351aaa6cc7a6a 100644
--- a/.gitlab/ci/.golangci-config/.golangci.yml
+++ b/.gitlab/ci/.golangci-config/.golangci.yml
@@ -27,9 +27,13 @@ linters:
   enable:
     - gofmt
     - goimports
-    - revive 
     - gocyclo
     - govet
+    - unused
+    - staticcheck
+    - typecheck
+    - revive
+    - whitespace
 issues:
   exclude-use-default: false
   max-issues-per-linter: 0
diff --git a/Dockerfile b/Dockerfile
index b583530d460522d176b4899f774ef7e73c546f80..0e9227f3eb32885934ca7c235d988624df538d27 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,4 +1,4 @@
-ARG GOLANG_VERSION=1.16
+ARG GOLANG_VERSION=1.17
 ARG BUILDARGS
 ARG $GITLAB_PROXY