安装准备 本文安装 Sonarqube是基于docker-compose的安装教程,安装 Sonarqube前需安装docker和docker-compose
docker安装和docker-compose安装见链接:
环境准备 因为sonarqube采用elasticsearch作为检索后台服务,在Linux下面部署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用其实很容易就达到这个数量
如果想查看和修改相关配置,参考linux中/etc/security/limits.conf配置文件说明 
如果已改过可以不用改了
1 2 3 4 sudo mkdir -p /home/sonar/postgres/{postgresql,data} sudo mkdir -p  /home/sonar/sonarqube/{extensions,logs,data,conf} sudo chmod -R 777 /home/sonar/*   
 
1 2 3 docker pull postgres:12.3 docker pull sonarqube:7.9.2-community 
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 version:  '3' services:   postgres:      image:  postgres:12.3      restart:  always      container_name:  postgres      ports:        -  5432 :5432      volumes:        -  /home/sonar/postgres/postgresql:/var/lib/postgresql        -  /home/sonar/postgres/data:/var/lib/postgresql/data        -  /etc/localtime:/etc/localtime:ro      environment:        TZ:  Asia/Shanghai        POSTGRES_USER:  sonar        POSTGRES_PASSWORD:  sonar        POSTGRES_DB:  sonar    sonar:      image:  sonarqube:7.9.2-community      container_name:  sonar      depends_on:        -  postgres      volumes:        -  /home/sonar/sonarqube/extensions:/opt/sonarqube/extensions        -  /home/sonar/sonarqube/logs:/opt/sonarqube/logs        -  /home/sonar/sonarqube/data:/opt/sonarqube/data        -  /home/sonar/sonarqube/conf:/opt/sonarqube/conf               -  /etc/localtime:/etc/localtime:ro      ports:        -  59000 :9000      command:               -  -Dsonar.ce.javaOpts=-Xmx2048m        -  -Dsonar.web.javaOpts=-Xmx2048m               -  -Dsonar.web.context=/               -  -Dsonar.core.serverBaseURL=https://sonarqube.example.com      environment:        TZ:  Asia/Shanghai        SONARQUBE_JDBC_USERNAME:  sonar        SONARQUBE_JDBC_PASSWORD:  sonar        SONARQUBE_JDBC_URL:  jdbc:postgresql://postgres:5432/sonar  
 
服务部署 1 2 # -d 服务后台运行 docker-compose up -d 
 
查看容器运行情况
1 2 3 4 5 $ sudo docker-compose -f docker-compose.yml ps   Name                Command               State            Ports --------------------------------------------------------------------------- postgres   docker-entrypoint.sh postgres    Up      0.0.0.0:5432->5432/tcp sonar      ./bin/run.sh -Dsonar.ce.ja ...   Up      0.0.0.0:9000->9000/tcp 
 
浏览器输入http://ip:9000,ip为sonar服务器ip,账号密码为:admin/admin 
更多精彩内容:mrxccc