sonarqube是什么

SonarQube是用于持续检查代码质量的开源平台。

可用于持续集成,持续部署流程中的代码检测环节。

idea和jenkins都提供了插件配合使用。

liunx推荐配置环境

liunx环境配置不合适的话,启动时会报错!

我后面的一个启动时报错就是没有达到要求的配置导致的。

sysctl -w vm.max_map_count=262144
sysctl -w fs.file-max=65536
ulimit -n 65536
ulimit -u 4096

docker-compose.yml


version: '3.1'
services:
db:
image: postgres
container_name: postgres
restart: always
db:
image: postgres
container_name: postgres
restart: always
ports:
- 5432:5432
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: 123456
POSTGRES_DB: sonar
PGDATA: /var/lib/postgresql/data/pgdata
volumes:
- /usr/local/docker/postgre/data:/var/lib/postgresql/data/pgdata
sonarqube:
image: sonarqube
container_name: sonarqube
restart: always
ports:
- 8007:9000
environment:
sonar.jdbc.username: postgres
sonar.jdbc.password: 123456
sonar.jdbc.url: jdbc:postgresql://db:5432/sonar
links:
- db
volumes:
- /usr/local/docker/sonarqube/conf:/opt/sonarqube/conf
- /usr/local/docker/sonarqube/extensions:/opt/sonarqube/extensions
- /usr/local/docker/sonarqube/logs:/opt/sonarqube/logs
- /usr/local/docker/sonarqube/data:/opt/sonarqube/data

首先部署PostgreSQL数据,也可以使用其他数据库。默认情况下,映像将使用不适合生产的嵌入式H2数据库。

H2是一个内存数据库,重启后数据就没有了。

推荐使用其他数据库。

配置说明

环境变量配置:

sonar.jdbc.username : 数据库账号

sonar.jdbc.password : 数据库密码

sonar.jdbc.url: jdbc : 数据库连接驱动

映射配置:

/opt/sonarqube/conf : 配置文件,例如 sonar.properties

/opt/sonarqube/data:数据文件,例如嵌入式H2数据库和Elasticsearch索引

/opt/sonarqube/logs:包含有关访问,Web进程,CE进程,Elasticsearch日志的SonarQube日志

/opt/sonarqube/extensions:插件,例如语言分析器 经提供了支持的数据库(Oracle除外)的驱动程序。不要更换提供的驱动程序;他们是唯一受支持的。对于Oracle,请将JDBC驱动程序复制到中$SONARQUBE_HOME/extensions/jdbc-driver/oracle。

遇到的问题1

docker-compose up -d

启动时报错:

解决方案

赋权限:

chmod -R 777 /usr/local/docker/sonarqube

遇到的问题2

启动时报错:

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方案

切换到root用户

执行命令:

sysctl -w vm.max_map_count=262144

查看结果:

sysctl -a|grep vm.max_map_count

显示:

vm.max_map_count = 262144

上述方法修改之后,如果重启虚拟机将失效,所以:

解决办法:

在 /etc/sysctl.conf文件最后添加一行

vm.max_map_count=262144

即可永久修改

输入地址

成功!

Docker运行sonarqube-(代码质量检测平台)的更多相关文章

  1. 基于docker-compose搭建sonarqube代码质量检测平台

    一.需求 在我们开发的过程中,难免有时候代码写的不规范,或存在一些静态的bug问题,这个时候一个良好的代码检查工具就很有必要,而sonarqube正好可以满足整个要求. 二. docker-compo ...

  2. Docker 搭建代码质量检测平台 SonarQube

    开始搭建 1.获取 postgresql 的镜像 $ docker pull postgres 2.启动 postgresql $ docker run --name db -e POSTGRES_U ...

  3. 代码质量检测(SonarQube)整合中文版+阿里P3C

    代码质量检测(SonarQube)整合中文版+阿里P3C 简介 SonarQube是一种自动代码审查工具,用于检测代码中的错误,漏洞和代码异味.它可以与您现有的工作流程集成,以便在项目分支和拉取请求之 ...

  4. 代码质量检测-Sonar

    一. Sonar简介 sonarqube系统是一个代码质量检测工具 由以下四个组件组成(https://docs.sonarqube.org/display/SONAR/Architecture+an ...

  5. DevOps之持续集成SonarQube代码质量扫描

    一.SonarQube介绍       SonarQube是一个用于代码质量检测管理的开放平台,可以集成不同的检测工具,代码分析工具,以及持续集成工具.SonarQube 并不是简单地把不同的代码检查 ...

  6. Linux下SonarQube代码质量平台的安装和使用方法

    Sonar简介: Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,Java ...

  7. jenkins+sonarqube进行代码质量检测

    JavaNeverGiveUp教程篇 用jenkins+sonarqube去检查代码是非常方便的,它能检查出代码中可能存在的一些问题,比如io流未关闭.空指针异常.死循环.代码不规范等问题. 1. 搭 ...

  8. sonar的安装与代码质量检测实例

    说明:sonar依赖数据库. mysql优化 1.笔者使用的是mysql数据库.首先对mysql做简单的优化配置. [root@localhost bin]# cat /etc/my.cnf [mys ...

  9. SonarQube代码质量扫描持续集成

    1.安装JDK和配置JAVA_HOME和CLASSPATH 2.安装mysql数据库 3.创建数据库和用户 mysql -u root -p mysql> CREATE DATABASE son ...

随机推荐

  1. ESP32-使用ADC笔记

    基于ESP-IDF4.1 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include "freertos/FreeRT ...

  2. git rebase(变基)操作

    1.rebase(变基)操作 注意事项:rebase 改变分支的根源,绝对不要在与其他人共享的分支上进行操作rebase黄金法则:绝不要在公共的分支上使用它! 1.1git merge 与 git r ...

  3. python pip install matplotlib安装模块

    python pip install matplotlib安装模块,可附带安装相关的模块 程序运行提示: from . import _imaging as coreImportError: DLL ...

  4. C语言入门思路

    C语言编程入门 0.数学中的常数在编程语言中称为常量,是一直不变的.如1,2,'a',"abc",3456,34.56等1.变量:类似于数学中的未知数.实际上就是指可用内存的一块区 ...

  5. python之数据驱动ddt操作(方法三)

    import unittestfrom selenium import webdriverfrom selenium.webdriver.common.by import Byimport unitt ...

  6. HCNA Routing&Switching之动态路由协议OSPF DR和BDR

    前文我们了解了OSPF建立邻居关系的条件,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15032907.html:今天我们来聊一聊OSPF中的DR和BDR: ...

  7. 微信小程序云开发-数据条件查询

    一.使用where条件查询 在.get()语句之前增加.where语句实现条件查询.  二.通过doc查询单条数据 1.使用doc来查询数据库中的单条数据 2.定义一个空对象,用来展示插叙到的单条数据 ...

  8. 八大排序算法~冒泡排序【加变量flag的作用】

    八大算法~冒泡排序[加变量flag的作用] 1,冒泡排序思想:从第一个数开始找,要把大数"排除在外"~为大数找后座.(从小到大排序哈) 外层循环~需要放后的大数个数: 内循环~从第 ...

  9. P6295 有标号 DAG 计数

    P6295 有标号 DAG 计数 题意 求 \(n\) 个点有标号弱联通 DAG 数量. 推导 设 \(f_i\) 表示 \(i\) 个点有标号 DAG 数量(不保证弱联通),有: \[f(i)=\s ...

  10. cookie详解(八)

    一.什么是cookie 1.大概了解 什么是 Cookie?针对不同用户,做出不同的响应.,这就是Cookie的原理.是浏览器储存在用户的机器上的(可见免用户名登录)1. Cookie翻译过来是饼干的 ...