2.devops-sonar安装

1.目标

安装sonar社区版8.9.1,并与gitlab集成,进行代码检查;

2.安装步骤

2.1.创建数据挂载目录

mkdir -p /data/sonar
#**第三方扩展插件
mkdir /data/sonar/extensions
#**数据文件,比如es(sonarqube依赖,官方镜像中内置es)
mkdir /data/sonar/data
#**日志文件
mkdir /data/sonar/logs

2.2.安装sonar

sonar新版不支持mysql,需要依赖postgresql数据库;

  • sonar.jdbc.url:postgresql数据库连接信息;
  • sonar.jdbc.username=postgres postgresql数据库用户名
  • sonar.jdbc.password=postgres postgresql数据库密码
docker run -d --name sonar \
    -p 8002:9000 \  
    -e sonar.jdbc.url=jdbc:postgresql://172.6.0.12:8434/sonar \
    -e sonar.jdbc.username=postgres \
    -e sonar.jdbc.password=postgres \
    -v /data/sonar/extensions:/opt/sonarqube/extensions \
    -v /data/sonar/logs:/opt/sonarqube/logs \
    -v /data/sonar/data:/opt/sonarqube/data \
    sonarqube:8.9.1-community

访问路径:http://127.0.0.1:8002,用户名/密码:admin/admin

2.3.汉化

在宿主机的数据挂载目录data/sonar/extensions/downloads下载汉化包,注意汉化包的sonar的版本要一致;

#**下载汉化包
wget https://github.com/xuhuisheng/sonar-l10n-zh/releases/download/sonar-l10n-zh-plugin-8.9/sonar-l10n-zh-plugin-8.9.jar
#**重启容器
docker restart sonar

3.使用

3.1.创建令牌

点击 用户头像 > 我的账号 > 安全 > 填写令牌名称 > 生成

3.2.gitlab-cicd集成

提交代码到gitlab develop分支后,自动运行sonar代码检查;

  • 修改gitlab环境的maven配置文件setting.xml
<profiles>
    <!-- sonar配置 -->
    <profile>
        <id>sonar</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
            <!-- sonar地址 -->
            <sonar.host.url>http://172.6.0.10:8002/</sonar.host.url>
            <!-- 上一步创建的令牌 -->
            <sonar.login>cce44014dc5496c9c444a2cf1fde46cd735120b</sonar.login>
        </properties>
    </profile>
</profiles>

<activeProfiles>
    <!-- sonar配置 -->
    <activeProfile>sonar</activeProfile>
</activeProfiles>
  • 修改项目.gitlab-ci.yml配置
# 开发分支sonar质量检测
sonar:dev:
 stage: sonar
 image: $REGISTRY/gaojie/maven:3-jdk-8
 variables:
  #**上一步创建的令牌
  SONAR_TOKEN: "cce44014dc5496c9c444a2cf1fde46cd735120b"
  #**sonar地址
  SONAR_HOST_URL: "http://172.6.0.10:8002/"
  GIT_DEPTH: 0
 script:
  - mvn verify sonar:sonar
 allow_failure: true
 only:
  - develop

4.遇到的问题

启动失败:max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

  • 解决:修改docker宿主机的es配置/etc/sysctl.conf
vim /etc/sysctl.conf 
添加参数:vm.max_map_count=262144
sysctl -p
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值