创建文件夹并赋予权限
shell
mkdir -p /home/sonar/postgres/postgresql
mkdir -p /home/sonar/postgres/data
mkdir -p /home/sonar/sonarqube
chmod 777 -R /home/sonar/sonarqube
echo "vm.max_map_count=262144" > /etc/sysctl.cnf
# 指定的文件加载系统参数
sysctl -p
创建docker-compose文件夹
文件的地址放在/home/sonar下,下面的文件除了volumns对应的文件路径以外不要轻做变更
yaml
version: '3'
services:
postgres:
image: postgres:latest
container_name: postgres
restart: always
privileged: true
networks:
- sonar
volumes:
- /home/sonar/postgres/postgresql:/var/lib/postgresql
- /home/sonar/postgres/data:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
ports:
- "5432:5432"
environment:
POSTGRES_USER: sonar
POSTGRES_PASSWORD: sonar
TZ: Asia/Shanghai
sonar:
image: sonarqube:8.9.10-community
container_name: sonar
restart: always
privileged: true
networks:
- sonar
volumes:
- /home/sonar/sonarqube/logs:/opt/sonarqube/logs
- /home/sonar/sonarqube/conf:/opt/sonarqube/conf
- /home/sonar/sonarqube/data:/opt/sonarqube/data
- /home/sonar/sonarqube/extensions:/opt/sonarqube/extensions
ports:
- "9090:9000"
links:
- "postgres:postgres"
environment:
SONARQUBE_JDBC_USERNAME: sonar
SONARQUBE_JDBC_PASSWORD: sonar
SONARQUBE_JDBC_URL: "jdbc:postgresql://postgres:5432/sonar"
networks:
sonar:
driver: bridge
启动项目
shell
docker-compose up -d
# 默认用户与密码是 admin/admin
# 修改的密码是Xianyu666
SonarQube的使用
安装中文插件
在这里找到对应sonarqube版本的中文包:地址
shell
# 文件的安装路径根据创建docker-compose时候的路径确定
cd /home/sonar/sonarqube/extensions/downloads
使用
使用SonarQube分析是非常简单的。只需要在你的项目目录下执行如下命令。
sonar-scanner \
-Dsonar.projectKey=deploy-system \
-Dsonar.sources=. \
-Dsonar.host.url=http://59.36.169.39:9090 \
-Dsonar.login=86523f0bbb7c6a1dc278f072d8161c581991a186