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

0、docker安装:

本文使用的硬件环境:

       MacOS Catalina 版本:10.15.3

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

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

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

 

Docker 包括三个基本概念:

  • 镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
  • 容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。
  • 仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

 

 

 

 

 



1、安装postgresql数据库

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

       docker pull postgres

 

 

 

 

 

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


执行效果:

 

 

 

 

 

 

 

 

 

 

 

 

 

如此简单安装好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:postgresql://db:5432/sonar -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: 指定端口映射,格式为:主机(宿主)端口:容器端口

 

运行效果:

 

 

 

 

 

 

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

 

 

 

 

 



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

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

 

 

 

 

posted @ 2020-08-11 11:07  简----  阅读(2868)  评论(1编辑  收藏  举报