【ubuntu】使用docker安装sonarqube9.8.0
一、场景
由于公司想要检查代码的质量,进行静态代码扫描,所以采用了通用的sonarqube,当然也会配合一些其他的工具,本文主要讲解使用sonar的安装及问题
由于版权问题,所以使用社区版,并且是长期支持版9.8.0
二、官网
https://www.sonarsource.com/products/sonarqube/downloads/
三、文档
https://docs.sonarsource.com/sonarqube-server/latest/try-out-sonarqube/#installing-a-local-instance-of-sonarqube
四、安装方法
可以去官方查找镜像
https://hub.docker.com/_/sonarqube/
选择社区长期支持版9.8.0
## 创建数据目录 mkdir -p /data/sonarqube/{sonarqube_conf,sonarqube_extensions,sonarqube_logs,sonarqube_data} chmod 777 -R /data/sonarqube/ ## 运行 docker run -itd --name sonarqube \ -p 9000:9000 \ -v /data/sonarqube/sonarqube_conf:/opt/sonarqube/conf \ -v /data/sonarqube/sonarqube_extensions:/opt/sonarqube/extensions \ -v /data/sonarqube/sonarqube_logs:/opt/sonarqube/logs \ -v /data/sonarqube/sonarqube_data:/opt/sonarqube/data \ sonarqube:9.8.0-community # 填写实际的镜像名 ## 验证 docker logs -f sonarqube
Once your instance is up and running, Log in to http://localhost:9000 using System Administrator credentials:
- login: admin
- password: admin
默认使用的是内置数据库
五、配置中文
重启容器即可
docker restart sonarqube
六、安装插件
根据自己需要安装即可
七、使用docker-compose进行安装
创建docker-compose.yml
里面路径信息可以根据实际进行修改
version: '3' services: postgres: image: postgres:14.5 restart: always container_name: postgres ports: - 5432:5432 volumes: - /docker/sonar/postgres/postgresql:/var/lib/postgresql - /docker/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:9.8.0-community container_name: sonar depends_on: - postgres volumes: - /docker/sonar/sonarqube/extensions:/opt/sonarqube/extensions - /docker/sonar/sonarqube/logs:/opt/sonarqube/logs - /docker/sonar/sonarqube/data:/opt/sonarqube/data - /docker/sonar/sonarqube/conf:/opt/sonarqube/conf # 设置与宿主机时间同步 - /etc/localtime:/etc/localtime:ro ports: - 9000:9000 command: # 内存设置 - -Dsonar.ce.javaOpts=-Xmx2048m - -Dsonar.web.javaOpts=-Xmx2048m # 设置服务代理路径 - -Dsonar.web.context=/ # 此设置用于集成gitlab时,回调地址设置 - -Dsonar.core.serverBaseURL=http://172.16.3.253:9000 environment: TZ: Asia/Shanghai SONARQUBE_JDBC_USERNAME: sonar SONARQUBE_JDBC_PASSWORD: sonar SONARQUBE_JDBC_URL: jdbc:postgresql://postgres:5432/sonar
注意:
如果不使用内置的数据库,就需要给服务器配置参数
#vim /etc/sysctl.conf vm.max_map_count=262144
关于ES报错
然后重启电脑进行安装
docker-compose up -d
可以使用-f 指定前面的配置yml文件, 如果名称不是docker-compose.yml
八、关于使用外置数据库
支持的数据库种类
可以使用docker安装postgresql
postgres - Official Image | Docker Hub
参考链接:
Docker搭建sonarqube - 对你无可奈何1988 - 博客园
sonarqube教程:docker-compose安装sonarqube及sonar-scanner插件的使用_sonarqube docker-compose-CSDN博客