I tried SonarQube locally. Overview There are two servers. SonarQube and SonaScanner In this example, run SonarScanner with by CLI. The scan data will send to SonarQube. Getting started SonarQube (Docker) Run SonarQube on Docker: docker run -d --name sonarqube -p 9000:9000 sonarqube:8.9-community After that, Browse http://localhost:9000 Log in with admin/admin, and update your password Add a project, and get token. Project key: mytest Display name: MyTest Name of token: myToken Token (in my case): df19e6fee8433d746e65e0043976043fe059aa57 SonarScanner (Docker) Note the network of the SonarQube Docker container:

GitLab Runner

Pre-requirement I installed Docker because I wanted to use Docker executor for better isolation of environments. Install GitLab Runner on the server Follow the official manual. On Ubuntu From repo (recommended) curl -L | sudo bash export GITLAB_RUNNER_DISABLE_SKEL=true; sudo -E apt install gitlab-runner Check. $ sudo gitlab-runner status Runtime platform arch=amd64 os=linux pid=3163 revision=2ebc4dc4 version=13.9.0 gitlab-runner: Service is running! $ sudo gitlab-runner list Runtime platform arch=amd64 os=linux pid=3172 revision=2ebc4dc4 version=13.