Linux下Docker安装SonarQube(PostgreSQL)

本文详细介绍了如何在Linux系统中使用Docker部署SonarQube 8.8-community版本,包括安装Postgresql数据库,配置SonarQube容器,创建和使用Token,以及使用SonarScanner进行代码扫描。此外,还提供了代码示例展示如何通过API和Postman进行调试。最后,提到了SonarQube的汉化和项目设置过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SonarQube是一种自动代码审查工具,用于检测代码中的错误、漏洞和代码异味。 它可以与现有的工作流程集成,以支持跨项目分支和拉取请求的持续代码检查。

本文基于Linux操作系统,在Docker容器中部署SonarQube服务,并进行简单的配置和使用。SonarQube7.8版本之后不再支持Mysql数据库,教程选用的是最新版本的Postgresql数据库,SonarQube使用的版本是8.8-community

1.安装Postgresql
1.1 下载 PostgreSQL镜像
docker pull postgres
1.2 启动容器
docker run -d -p 5432:5432 -v /data/postgres:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -e ALLOW_IP_RANGE=0.0.0.0/0 --name postgres postgres

参数说明:

POSTGRES_PASSWORD 是数据库初始密码

ALLOW_IP_RANGE=0.0.0.0/0 允许任何主机访问

1.3 进入postgres容器
docker exec -it postgres bash

注意: 这里的postgres1.2--name的参数

1.4 使用默认用户postgres创建SonarQube数据库
# 切换postgres用户
su postgres
# 进入数据库
psql
# 创建sonar数据库
CREATE DATABASE sonar;
# 退出数据库
\q
# 退出postgres用户
exit
# 退出容器
exit
2. 部署SonarQube
2.1 下载SonarQube镜像
docker pull sonarqube:8.8-community
2.2 创建Volume(可忽略此步骤)
docker volume create --name sonarqube_data
docker volume create --name sonarqube_logs
docker volume create --name sonarqube_extensions
docker volume create --name sonarqube_conf
2.3 启动容器
docker run -d --name sonarqube \
    -p 9000:9000 \
    -e SONAR_JDBC_URL=jdbc:postgresql://192.168.14.5:5432/sonar \
    -e SONAR_JDBC_USERNAME=postgres \
    -e SONAR_JDBC_PASSWORD=123456 \
    -v sonarqube_data:/opt/sonarqube/data \
    -v sonarqube_extensions:/opt/sonarqube/extensions \
    -v sonarqube_logs:/opt/sonarqube/logs \
    -v sonarqube_conf:/opt/sonarqube/conf \
    sonarqube:8.8-community

docker logs -f sonarqube 查看日志发现报错

错误日志

修改配置

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李柏林

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值