docker sonarqube地址:https://hub.docker.com/_/sonarqube

docker mysql地址:https://hub.docker.com/_/mysql

以下在linux环境执行:

一、拉取sonarqube镜像

docker pull sonarqube

二、docker安装mysql

1、拉取mysql 5.7版本镜像

docker pull mysql:5.7

2、启动mysql

docker run -p 3307:3306 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7

3、进入启动的mysql container

docker exec -it mysql(容器名) bash

4、创建sonar数据库和sonar用户

#登录mysql

mysql -u root -p

#创建sonar数据库

create database sonar

#添加远程登录用户
CREATE USER 'sonar'@'%' IDENTIFIED WITH mysql_native_password BY 'sonar';
GRANT ALL PRIVILEGES ON *.* TO 'sonar'@'%';
三、启动sonar
docker run -d --name sonarqube -p 9000:9000 -p 9092:9092 --link=mysqlnew:mysql -e SONARQUBE_JDBC_USERNAME=sonar -e SONARQUBE_JDBC_PASSWORD=sonar -e SONARQUBE_JDBC_URL="jdbc:mysql://ip:3307/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance&useSSL=false" sonarqube
说明上面mysql 3307端口是因为启动mysql对外用了3307
 
四、汉化sonar
 

五、sonar客户端sonar-scanner的安装

1、下载onar-scanner客户端

wget https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-3.3.0.1492-linux.zip

2、解压

unzip sonar-scanner-cli-3.3.0.1492-linux.zip sonar-scanner

3、移到标准位置

mv son-scanner /usr/local/sonar-scanner/

4、修改配置

cd /usr/local/sonar-scanner/conf

vi sonar-scanner.properties

#----- Default SonarQube server
sonar.host.url=http://ip:9000(sonar服务端访问地址)
#----- Default source code encoding
sonar.sourceEncoding=UTF-8
sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://ip:3307/sonar?useUnicode=true&characterEncoding=utf8
sonar.login=admin
sonar.password=admin

4、环境变量配置

vi /etc/profile

在末尾环境变量处增加以下内容

export SONAR_SCANNER_HOME=/usr/local/sonar-scanner/

export PATH=$SONAR_SCANNER_HOME/bin:$PATH

5、验证

在linux任意目录执行sonar-scanner会进入执行过程,证明安装成功

六、程序目录下的sonar-project.properties配置

1、在程序pom.xml所在目录添加sonar-project.properties文件

2、sonar-project.properties文件内容如下

#项目的key(对应sonar服务端的一个身份标识)
sonar.projectKey=xx-project
#项目的名字(可以随便写,这个名字在sonar显示的)
sonar.projectName=xxproject
#项目的版本
sonar.projectVersion=1.0
#需要分析的源码的目录
sonar.sources=.
#这是target(如果没编译可以不写)
sonar.java.binaries=src
#java语言
#sonar.language=java
#编码格式
sonar.sourceEncoding=UTF-8

7、执行扫描验证

在项目根目录执行sonar-scanner

到sonar服务端项目列表查看结果

八、jenkins打通

待续

docker + mysql安装sonarqube的更多相关文章

  1. Linux(Manjaro) - Docker - MySQL 安装配置

    Linux(Manjaro) - Docker - MySQL 安装配置 拉取mysql镜像 # 使用网易的 MySQL 镜像地址 docker pull hub.c.163.com/library/ ...

  2. SpringBoot Docker Mysql安装,Docker安装Mysql

    SpringBoot Docker Mysql安装,Docker安装Mysql ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...

  3. docker mysql安装

    Docker MySQL-Server 安装1.搜索docker search mysql# 一般会选择mysql-server 版本 2.拉取 docker pull mysql-server 3. ...

  4. Docker方式安装SonarQube

    获取镜像 docker pull postgres: docker pull sonarqube:-community 启动镜像 docker run -d -p : -e POSTGRES_PASS ...

  5. docker 安装 sonarQube

    sonarQube 是一款开源代码检测工具.本篇介绍通过 docker 来安装.大概的一个运作流程是这样的,先通过 sonar-scanner 插件扫描代码,把数据存储到数据库,sonarQube 读 ...

  6. 在docker中安装mysql

    #!/bin/sh # 安装docker # 在docker中安装mysql # 解决了docker容器中无法输入中文的问题 ##########################安装docker # ...

  7. CentOS双机中Docker下安装Mysql并配置互为主从模式

    CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...

  8. docker微服务部署之:四、安装docker、docker中安装mysql和jdk1.8、手动构建镜像、部署项目

    docker微服务部署之:三,搭建Zuul微服务项目 1.Centos7安装Docker 详见:Centos7安装Docker 2.Docker中安装jdk1.8 详见:使用Docker构建jdk1. ...

  9. Docker之Mysql安装及配置

    原文:Docker之Mysql安装及配置 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/zhaobw831/article/details/8014 ...

随机推荐

  1. js生成带有logo的二维码并保存成图片下载

    生成二维码,需要依赖jquery,先引入一个jquery,然后需要一个插件改变过了jquery-qrcode.js 插件代码(需要的自己打开看): /*! jquery-qrcode v0.14.0 ...

  2. 孤儿进程VS僵尸进程

    我们知道在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的进程.子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束. 当一个 进程完成 ...

  3. ORACLE升级11g以上之前版本的wm_concat()函数失效

    先执行: create or replace type string_sum_obj as object ( --聚合函数的实质就是一个对象 sum_string ), static function ...

  4. Oracel递归查询start with ...connect by prior在Mysql中的实现

    Oracle是一个强大的数据库,有很多的函数和语法可以带来很多便利,有些函数和语法在Mysql中有代替的,但是有些没有现成可用的方法,比如Oracle的递归,在Mysql中怎么实现呢? 例子: Ora ...

  5. dev 控件的treelist

    最近项目中要求用dev 控件的treelist 树形控件. 如下图 要求如下: 1:选择父节点后,子节点全部打钩: 2:选择子节点而不选择父节点,则从当前节点的父节点一直到根节点check框都是半选状 ...

  6. 与python的三天

    #导入海龟图 import turtleturtle.showturtle()turtle.width(20)liebiao = ['red','blue','yellow','green','pur ...

  7. Mac/Linux 常用命令

    一 mkdir 创建文件夹 mkdir myApp 在当前目录下创建myApp文件夹. mkdir -p /a/b/c 创建/a/b/c文件夹,如果/a或/a/b不存在,则自动创建. 二 touch ...

  8. 使用python画一只佩奇

    打开界面: 打开python shell界面. 建立脚本: 单击"file"——"new file"来建立脚本. 编写代码: 具体的代码如下. import t ...

  9. html模板导出pdf文件

    package com.crc.commonreport.util; import java.awt.Insets; import java.io.ByteArrayOutputStream; imp ...

  10. Qt跨平台开发Wince5.0和Android程序

    所谓跨平台是指维护一份代码,可编译出多平台的应用程序.Qt这方面虽然已经做的不错,但性能还是体验,和原生开发工具开发的程序相比,差距还是不小的.但单从生产应用的角度来说,可以采用,不失为一种好的解决方 ...