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. asp.net core 视图组件(转)

    介绍视图组件 视图组件是 ASP.NET Core MVC 中的新特性,与局部视图相似,但是它们更加的强大.视图组件不使用模型绑定,只取决于调用它时所提供的数据.视图组件有以下特点: 渲染一个块,而不 ...

  2. 史上最全的Nginx配置文档

    Nginx是一个异步框架的Web服务器,也可以用作反向代理,负载平衡器 和 HTTP缓存.该软件由Igor Sysoev 创建,并于2004年首次公开发布.同名公司成立于2011年,以提供支持.Ngi ...

  3. 将make的输出(标准输出/标准错误输出)重定向到文件

    方式 描述符 含义 stdin 0 标准输入 stdout 1 标准输出 stderr 2 标准错误输出 1.想要把make输出的全部信息,输出到某个文件中 最常见的办法就是:make xxx > ...

  4. PYTHON startswith (endswith类似)

    Python startswith()方法Python startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False.如果参数 beg 和 end ...

  5. java测试银行系统源代码

    1 package Kaoshi; 2 3 /*信1705-3 20173442 田昕可*/ 4 import java.util.*; 5 import java.io.*; 6 7 class A ...

  6. Spark—local模式环境搭建

    Spark--local模式环境搭建 一.Spark运行模式介绍 1.本地模式(loca模式):spark单机运行,一般用户测试和开发使用 2.Standalone模式:构建一个主从结构(Master ...

  7. mybatis-7-缓存

    1. 一级缓存: SqlSession 级别, 默认开启, 并且不能关闭 操作数据库是需要创建 SqlSession 对象, 在对象中有一个 HashMap 用于存储缓存数据, 不同的 SqlSess ...

  8. 队列Queue:任务间的消息读写,安排起来~

    摘要:本文通过分析鸿蒙轻内核队列模块的源码,掌握队列使用上的差异. 本文分享自华为云社区<鸿蒙轻内核M核源码分析系列十三 消息队列Queue>,作者:zhushy . 队列(Queue)是 ...

  9. PAT乙级:1090危险品装箱(25分)

    PAT乙级:1090危险品装箱(25分) 题干 集装箱运输货物时,我们必须特别小心,不能把不相容的货物装在一只箱子里.比如氧化剂绝对不能跟易燃液体同箱,否则很容易造成爆炸. 本题给定一张不相容物品的清 ...

  10. Gos Log每次查询响应后自动清理临时文件,优化磁盘空间

    客户端清理 logc/controllers/file/file.go 压缩后清理原始文件 //压缩成功后 删除原文件 os.Remove(src) 返回后清理压缩文件 defer func() { ...