Docker部署sonar

0x00 前言

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量。通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言的代码质量管理与检测。

 

0x01 安装

  1. 获取 postgresql 的镜像
    1
    $ docker pull postgres
  2. 启动 postgresql
    1
    $ docker run --name postgresql -p 5432:5432 -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -e POSTGRE_DB=sonar -v /opt/sonarqube/data/postgresql/data:/var/lib/postgresql/data -d postgres

    其中 postgresql为容器名称 POSTGRES_USER POSTGRES_PASSWORD POSTGRE_DB指定postgresql的用户名密码和数据库名,/opt/sonarqube/data/postgresql/data为pg数据库文件挂载到宿主机路径

  3. 获取 sonarqube 的镜像
    1
    $ docker pull sonarqube
  4. 启动 sonarqube
    1
    $ docker run --name sonarqube --link postgresql -e SONARQUBE_JDBC_URL=jdbc:postgresql://postgresql:5432/sonar -p 9001:9000 -v /opt/sonarqube/data/sonarqube/data:/opt/sonarqube/data -v /opt/sonarqube/data/sonarqube/extensions/plugins:/opt/sonarqube/extensions/plugins -d sonarqube

    其中–link postgresql 是指和 postgresql 容器连接通讯, 用网关的方式也可以

创建/opt/sonarqube/data/sonarqube/data作为sonarqube的数据文件,权限设置为777
创建/opt/sonarqube/data/sonarqube/extensions/plugins作为sonarqube的插件目录

0x02 使用

sonar使用中需要和CI工具进行配合使用进行自动化代码分析
与jenkins联动…

发布者:常山赵子龙,转载请注明出处:https://www.qztxs.com/archives/science/technology/11711

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年6月1日 下午5:36
下一篇 2022年6月1日 下午5:38

相关推荐

  • 订单中心,1亿数据架构,这次服了

    订单中心,是互联网业务中,一个典型的“多key”业务,即:用户ID,商家ID,订单ID等多个key上都有业务查询需求。   随着数据量的逐步增大,并发量的逐步增大,订单中心这种“多key”业务,架构应该如何设计,有哪些因素需要考虑,是本文将要系统性讨论的问题。   什么是“多key”类业务? 所谓的“多key”,是指一条元数据中,有多个属性上存在前台在线查询...

    2022年5月14日
    1900
  • 凭啥修改代码的是我?原来这就是耦合!

    你有没有遇到过这样的场景? (1)硬件升级,要换一台高配机器; (2)网络重新规划,若干服务器要调整机架; (3)服务器当机,要重新部署恢复服务; …   更具体的,如上图:数据库换了一个ip,此时往往连接此数据库的上游需要修改配置重启,如果数据库有很多上游调用方,改配置重启的调用方会很多,每次换ip的成本往往很高,成为大家共性的痛点。   由A的调整(数据...

    2022年5月12日
    2900
  • 互联网分层架构的本质

    经常有朋友问我,为什么要做分层架构,什么时候架构要抽象一层,今天来聊一聊这个问题。 上图是一个典型的互联网分层架构: (1)客户端层:典型调用方是browser或者APP; (2)站点应用层:实现核心业务逻辑,从下游获取数据,对上游返回html或者json; (3)数据-缓存层:加速访问存储; (4)数据-数据库层:固化数据存储;   如果实施了服务化,这个...

    2022年5月14日
    5000
  • 我C,MySQL双主架构,原来能这么玩

    经常有朋友问,MySQL双主的一致性问题,今天简单聊一聊。   MySQL为什么要使用双主架构? MySQL最常见的集群架构,是一主多从,主从同步,读写分离的架构。通过这种方式,能够扩充数据库的读性能,保证读库的高可用,但此时写库仍然是单点。   为了保证MySQL写库的高可用,可以在一个MySQL数据库集群中可以设置两个主库,并设置双向同步,以冗余写库的方...

    2022年5月14日
    1800
  • 穿透类缓存Cache使用,这一篇就够了!

    有些成熟的技术方案,用不着创新,固化下来的模式(pattern),学就完了。例如,穿透类缓存的使用,“Cache Aside Pattern”就是很好的实践沉淀,故今天聊一聊Cache Aside Pattern。 画外音:就好像“设计模式”,它就是沉淀下来的设计方法。   什么是“Cache Aside Pattern”? 旁路缓存方案的经验实践,这个实践...

    2022年5月10日
    2100

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信