二、安装SonarQube
一、简介
SonarQube是一个自我管理的自动代码审查工具,可以系统地帮助您提供干净的代码。作为我们Sonar解决方案的核心元素,SonarQube集成到您现有的工作流程中,并检测代码中的问题,以帮助您对项目进行持续的代码检查。该工具分析了30多种不同的编程语言,并集成到您的CI管道和DevOps平台中,以确保您的代码符合高质量标准。
Sonar的发展
Sonar解决方案在开发过程的每个阶段都进行检查:
SonarLint
在编写代码时在IDE中提供即时反馈,以便在提交之前发现并解决问题。
SonarQube的PR
分析适合您的CI/CD工作流程,并通过SonarQebe的公关分析和质量门的使用。
质量门禁
有问题的代码不被发布到生产环境中,这是帮助您融入“随代码清洁”方法的关键工具。
Clean as You Code
方法可以帮助您专注于提交新的、干净的代码用于生产,因为您知道随着时间的推移,您的现有代码会得到改进。
二、安装SonarQube
选用腾讯云主机安装SonarQube。SonarQube要求最少2G的内存,操作系统最少1G的空闲内存。因此最少4G内存。镜像选择Centos。SonarQube依赖内置的ES。ES对Linux的参数有要求,登录云主机后,运行
sudo vim /etc/sysctl.conf
添加参数
vm.max_map_count = 262144
重新加载/etc/sysctl.conf配置
sysctl -p
腾讯云主机配置访问规则:
配置要开放的端口和ip地址。
登录云主机后,安装Docker,用Docker安装SonarQube。卸载旧版Docker:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装依赖:
sudo yum install -y yum-utils
配置镜像:
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新索引缓存:
yum makecache fast
安装:
sudo yum install docker-ce docker-ce-cli containerd.io
启动Docker:
sudo systemctl start docker
查看Docker版本:
docker version
安装docker-compose:
curl -SL https://github.com/docker/compose/releases/download/v2.12.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
添加权限:
chmod +x /usr/local/bin/docker-compose
新建SonarQube和Postgresql对应Docker的文件夹:
sudo mkdir -p /data/sonar/postgres/postgresql
sudo mkdir -p /data/sonar/postgres/data
sudo mkdir -p /data/sonar/sonarqube
sudo chmod 777 -R /data/sonar/sonarqub
安装SonarQube的docker-compose文件sonar-compose.yml:
version: '3'
services:
postgres:
image: postgres:latest
container_name: postgres
restart: always
privileged: true
networks:
- sonar
volumes:
- /data/sonar/postgres/postgresql:/var/lib/postgresql
- /data/sonar/postgres/data:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
ports:
- "5432:5432"
environment:
POSTGRES_USER: sonar
POSTGRES_PASSWORD: sonar
POSTGRES_DB: sonar
TZ: Asia/Shanghai
sonar:
image: sonarqube:8.9.10-community
container_name: sonar
restart: always
privileged: true
networks:
- sonar
volumes:
- /data/sonar/sonarqube/logs:/opt/sonarqube/logs
- /data/sonar/sonarqube/conf:/opt/sonarqube/conf
- /data/sonar/sonarqube/data:/opt/sonarqube/data
- /data/sonar/sonarqube/extensions:/opt/sonarqube/extensions
ports:
- "8000:9000"
links:
- "postgres:postgres"
environment:
ALLOW_EMPTY_PASSWORD: "yes"
SONARQUBE_JDBC_USERNAME: sonar
SONARQUBE_JDBC_PASSWORD: sonar
SONARQUBE_JDBC_URL: "jdbc:postgresql://postgres:5432/sonar"
networks:
sonar:
driver: bridge
sonarqube8.X版本依赖的数据库是Postgresql。需要安装Postgresql。
运行
sudo docker-compose -f sonar-compose.yml up -d
启动Docker的SonarQube镜像。
运行sudo docker ps
查看启动的容器。在运行sudo docker logs 容器id
查看对用容器的日志。启动成功后访问外网ip:8000,,看到
默认用户名和密码是admin/admin。登陆后要修改密码:
修改密码后:
安装中文插件
安装成功后需要重启,安装失败重新点击install重装即可。
安装成功后,会查看到重启按钮,点击即可
安装Docker参考:https://blog.csdn.net/PyongSen/article/details/123053374
安装docker-compose参考:https://blog.csdn.net/u010833154/article/details/127687207
docker-compose部署sonarqube参考:https://blog.csdn.net/litaimin/article/details/128092140
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端