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. cut和grep 选取命令

    cut命令 cut:将一段信息的某一段"切"出来,处理的信息是以行为单位.参数: -d :后接分隔字符,与-f一起使用: -f :依据-d的分隔字符将一段信息切割成为数段,用-f取 ...

  2. MVP on Board 没用小技巧 👌

    七月入选了微软 MVP,本文记录 on board 过程中遇到的小问题和没用小技巧. MVP Portal 当你收到来自微软的确认邮件之后,你将正式被接纳为微软现任 MVP 的一员.从此刻开始,你便拥 ...

  3. C语言:异或

    异或运算符"∧"也称XOR运算符.它的规则是若参加运算的两个二进位同号,则结果为0(假):异号则为1(真).即 0∧0=0,0∧1=1, 1^0=1,1∧1=0. 相同为0,不相同 ...

  4. C语言:printf("")标志详解

    %d 十进制整数 %ld  十进制长整型 %hd 十进制短整型 %o 八进制整数 %X  %x  十六进制 整数 %f 以十进制形式输出 float 类型: %lf 以十进制形式输出 double 类 ...

  5. Java基础00-网络编程29

    1. 网络编程入门 1.1 网络编程概述 1.2 网络编程三要素 1.3 IP地址 在命令提示符中使用 1.4 InetAddress的使用 代码示例: public class InetAddres ...

  6. CH1809 匹配统计 题解

    看了好久才懂,我好菜啊-- 题意:给两个字符串 \(a\) 与 \(b\),对于 \(q\) 次询问,每次询问给出一个 \(x\),求存在多少个位置使得 \(a\) 从该位置开始的后缀子串与 \(b\ ...

  7. Python - 基础数据类型 tuple 元组

    元组简单介绍 元组是一个和列表和相似的数据类型,也是一个有序序列 两者拥有着基本相同的特性,但是也有很多不同的地方 声明元组 var = (1, 2, 3) var = ("1", ...

  8. PDMan使用

    场景: 这几天项目要完结交付,需要补很多文档.此时发现甲方要求提供数据库设计文档,尽管我觉得他们不会看,但是人家要求,还是补一下吧!时间紧迫,要赶出整个项目的数据库设计文档比较麻烦,每个两三天不行.于 ...

  9. sql server 查看数据库配置等信息(字符集,编码格式,版本号...)

    select SERVERPROPERTY(N'edition') as Edition --数据版本,如企业版.开发版等,SERVERPROPERTY(N'collation') as Collat ...

  10. @FeignClient常用属性

    @FeignClient(name = "gateway-test", value = "gateway-test", url = "localhos ...