一、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):倉庫可看成一個代碼控制中心,用來保存鏡像。
二、安裝postgresql數據庫
1.1 終端命令中,拉取postgres鏡像
docker pull postgres
1.2 運行鏡像容器:
docker命令:
--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.
三、安裝SonarQube,并配置數據庫連接
2.1 下載sonarQube鏡像:
docker命令:
docker pull sonarqube
2.2 啟動sonar,并配置數據庫為1中的postgres
docker命令:
--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
說明:本文為檸檬班小簡老師原創,轉載需注明出處