Docker 下,搭建 SonarQube 环境 (数据库为 postgres)

本贴最后更新于 1602 天前,其中的信息可能已经时异事殊

0、docker安装:

本文使用的硬件环境:

MacOS Catalina 版本:10.15.3

docker官方下载mac下的docker app,安装完成即可。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker 包括三个基本概念:

image.png



1、安装postgresql数据库

1.1 终端命令中,拉取postgres镜像

docker pull postgres

image.png


1.2 运行镜像容器:

docker命令:

**docker run --name db -e POSTGRES_USER=sonar -e POSTGRES_PASSWORD=sonar -d postgres**

--name: 容器名称 此为处db

**-e:**使用值docker将名称为POSTGRES_PASSWORD,POSTGRES_USER的环境变量暴露给容器。

POSTGRES_PASSWORD环境变量设置PostgreSQL的超级用户密码。

您可以设置其他环境变量。这些包括POSTGRES_USER和POSTGRES_DB。

POSTGRES_USER设置超级用户名。如果未提供,则超级用户名默认为postgres。

POSTGRES_DB设置要设置的默认数据库的名称。如果未提供,则默认为POSTGRES_USER的值。

此处设置的为:数据库名为sonar,超级用户名为sonar,密码为sonar.
-d: 后台运行容器,并返回容器ID


执行效果: ![image.png](http://testingpai.com/upload/file/2020/adcd344b-4d4a-4c0b-8c55-08b2a5dc005b.png)

image.png

image.png

如此简单安装好postgres数据库了。

如果不用docker这玩意:

1、去官网下载一个最新版本的postgres(根据设备系统去下载)

2、根据平台去安装,不同系统上安装还会有一些不同的坑。

3、使用pgAdmin连接postgres数据库,创建sonar用户,创建sonar数据库。

这一顿操作得花半小时去了。

使用docker下来,下载速度快的话,不要5分钟,game over.



2、安装SonarQube,并配置数据库连接。

2.1 下载sonarQube镜像:

docker命令:

docker pull sonarqube


2.2 启动sonar,并配置数据库为1中的postgres

docker命令:

**docker run --name sonar --link db -e SONARQUBE_JDBC_URL=jdbc: -e SONARQUBE_JDBC_USERNAME=sonar -e SONARQUBE_JDBC_PASSWORD=sonar -p 9000:9000 -d sonarqube**

**--name:**容器名称 此为处sonar

**--link:**与其它容器通信。

    --link 容器名称    此处为与名为db的容器,即postgres的数据库。

    添加了SONARQUBE_JDBC_URL环境变量为 jdbc:postgresql://容器名称:端口/数据库名称  (数据库连接驱动)

    添加了SONARQUBE_JDBC_USERNAME环境变量为sonar(数据库连接用户名)

    添加了SONARQUBE_JDBC_PASSWORD环境变量为sonar(数据库连接密码)

-p: 指定端口映射,格式为:主机(宿主)端口:容器端口


运行效果:

image.png

image.png


在浏览器当中,访问:http://localhost:9000

image.png



sonarqube能够正常访问之后,就可以开始扫描项目代码啦。

扫描java项目代码请参考:https://www.cnblogs.com/Simple-Small/p/12973208.html

image.png

1 操作
xiaojian 在 2020-08-06 18:00:34 更新了该帖
回帖
请输入回帖内容 ...