Skip to content
石头软件测试技术分享石头软件测试技术分享
主页
github icon
  • 辅助技能

    • 编程语言
      • 环境部署

        • linux常用命令
          • shell
            • docker
              • nginx
                • redis
                  • mysql
                    • allure
                      • sonarqube部署
                        • 部署环境
                          • 宿主机虚拟化配置修改
                            • postgres安装
                              • sonarqube安装
                                • maven命令
                                  • jmeter集成
                                • 工具

                                  • adb
                                    • git的使用
                                      • 抓包工具
                                        • 资源监控

                                      sonarqube部署

                                      author icon石头calendar icon2022年8月14日timer icon大约 2 分钟

                                      此页内容
                                      • 部署环境
                                      • 宿主机虚拟化配置修改
                                      • postgres安装
                                      • sonarqube安装
                                      • maven命令
                                      • jmeter集成

                                      # sonarqube部署

                                      # 部署环境

                                      centos 7.5+
                                      sonarqube 8.9.6
                                      postgres 13.0

                                      # 宿主机虚拟化配置修改

                                      临时修改重启会失效

                                      sysctl -w vm.max_map_count=524288
                                      sysctl -w fs.file-max=131072
                                      ulimit -n 131072
                                      ulimit -u 8192
                                      
                                      1
                                      2
                                      3
                                      4

                                      # postgres安装

                                      1. postgres数据库持久化目录
                                      mkdir /postgre
                                      
                                      1
                                      1. 赋予目录权限
                                      chown -R 777 /postgre
                                      
                                      1
                                      1. 执行docker安装命令 密码是:123456,默认端口5432 使用主机网络
                                      sudo docker run --name postgres  --restart=always  \
                                      -v /postgre/FaceService:/opt/FaceService \
                                      -v /postgre/postgreData:/var/lib/postgresql/data \
                                      -v  /etc/localtime:/etc/localtime:ro \
                                      -e POSTGRES_PASSWORD=123456--network=host -d postgres
                                      
                                      1
                                      2
                                      3
                                      4
                                      5
                                      1. 创建sonarqube所需数据库
                                      DROP DATABASE IF EXISTS sonarqube;
                                      CREATE DATABASE sonarqube WITH  ENCODING = 'UTF8';
                                      CREATE USER sonarqube WITH PASSWORD 'sonarqube';
                                      GRANT ALL PRIVILEGES ON DATABASE sonarqube TO sonarqube;
                                      GRANT ALL PRIVILEGES ON all tables in schema public TO sonarqube;
                                      
                                      1
                                      2
                                      3
                                      4
                                      5

                                      # sonarqube安装

                                      1. sonarqube数据持久化目录
                                      mkdir /sonarqube
                                      
                                      1
                                      1. 赋予目录权限
                                      chown -R 777 /sonarqube
                                      
                                      1
                                      1. 执行docker安装命令 默认账户密码admin/admin, 注意修改SONAR_JDBC_URL的host为服务器的内网ip
                                      docker run -d --name sonarqube -p 9000:9000 \
                                      -v /sonarqube/data:/opt/sonarqube/data \
                                      -v /sonarqube/extensions:/opt/sonarqube/extensions \
                                      -v /sonarqube/logs:/opt/sonarqube/logs \
                                      -v /sonarqube/temp:/opt/sonarqube/temp \
                                      -e SONAR_JDBC_URL="jdbc:postgresql://172.18.1.53:5432/sonarqube?useUnicode=true&characterEncoding=utf-8" \
                                      -e SONAR_JDBC_USERNAME="sonarqube" \
                                      -e SONAR_JDBC_PASSWORD="sonarqube" \
                                      -e SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true \
                                      sonarqube:8.9-community
                                      
                                      1
                                      2
                                      3
                                      4
                                      5
                                      6
                                      7
                                      8
                                      9
                                      10
                                      1. 汉化
                                      • 使用sonarqube自带应用市场安装(可能会失败)
                                        进入设置→应用市场, 搜索Chinese Pack安装
                                        img.png
                                      • 离线安装(推荐)
                                        进入https://github.com/xuhuisheng/sonar-l10n-zhopen in new window下载jar包
                                        记得对照版本号下载下载完后需要放入 /sonarqube/extensions/downloads目录下, 此时安装流程会继续执行, 切勿放到/sonarqube/extensions/plugins下,该目录为安装后的目录,会导致插件加载失败,无法启动sonarqube
                                      1. 安装社区版本分支选择插件
                                      • 插件下载
                                        下载地址https://github.com/mc1arke/sonarqube-community-branch-pluginopen in new window 下载完后需要放入 /sonarqube/extensions/downloads目录下
                                      • 插件配置 进入容器修改sonarqube配置文件
                                      docker exec -it 容器id /bin/bash
                                      cd config
                                      vim sonar.properties
                                      
                                      1
                                      2
                                      3

                                      增加配置(注意与安装插件的版本号对应)

                                      sonar.web.javaAdditionalOpts=-javaagent:./extensions/plugins/sonarqube-community-branch-plugin-1.8.2.jar=web
                                      sonar.ce.javaAdditionalOpts=-javaagent:./extensions/plugins/sonarqube-community-branch-plugin-1.8.2.jar=ce
                                      
                                      1
                                      2
                                      • 重启容器
                                      docker restart 容器id
                                      
                                      1

                                      # maven命令

                                      初始化检查

                                      # 默认扫描主分支更换分支
                                      参数中增加-Dsonar.branch.name={branch.name}, branch.name输入分支名称
                                      mvn sonar:sonar \
                                        -Dsonar.branch.name={branch.name}
                                        -Dsonar.projectKey=tc-saas \
                                        -Dsonar.host.url=http://服务器内网地址:9000 \
                                        -Dsonar.login=生成的token
                                      
                                      1
                                      2
                                      3
                                      4
                                      5
                                      6
                                      7

                                      # jmeter集成

                                      1. 使用jmeter的SonarQube Scanner插件(服务器jdk版本是11使用这个)
                                      2. 每次构建前执行maven命令(服务器jdk版本是1.8使用这个)
                                      上一页
                                      allure
                                      Copyright © 2021-present Evan You 石头 | 备案号 : 蜀ICP备2021021200号-2 | 友情链接 : APP开发者工具