本地環境:ubuntu11.4,tomcat 6.0,mysqljava
按照官方文檔,sonar有4種安裝方式,我在這邊介紹怎麼安裝。mysql
首先下載最新版的sonar,下載地址:http://www.sonarsource.org/downloads/linux
下載完成以後,要注意一個問題,官方的說明是不要安裝在以數字開頭的目錄中。因此咱們就不要解壓在數字開頭的目錄中。web
因爲sonar的安裝須要數據庫,咱們如今mysql中創建一個名叫sonar的數據庫。在建立數據庫時,建議的字符集是UTF-8。sql
數據庫創建完成以後,再在配置文件conf/sonar.properties中修改:數據庫
# WEB SETTINGS - STANDALONE MODE ONLY
# These settings are ignored when the war file is deployed to a JEE server.
#---------------------------------------------------------
# Listen host/port and context path (for example / or /sonar). Default values are 0.0.0.0:9000/.
sonar.web.host: localhost
sonar.web.port: 9001
sonar.web.context: /apache
(之前沒有修改端口,默認端口是9000,有時候會出現別的應用程序會佔用這個端口,最好仍是改一下的好)ubuntu
#----- Credentials
# Permissions to create tables and indexes must be granted to JDBC user.
# The schema must be created first.
sonar.jdbc.username: tmy
sonar.jdbc.password: 1
修改數據的用戶名和密碼,這裏是我這邊的配置windows
#----- MySQL 5.x/6.x
# Comment the embedded database and uncomment the following line to use MySQL
sonar.jdbc.url: jdbc:mysql://localhost:3306/sonar?user=tmy&password=1&useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true
# Optional properties
sonar.jdbc.driverClassName: com.mysql.jdbc.Driver
sonar.jdbc.validationQuery: select 1
最後修改配置,將mysql的註釋去掉就能夠了。tomcat
進入bin中,選擇適合本身系統,運行sonar.sh,若是是windows運行bat。
運行命令:sh sonar.sh start
而後咱們看看日誌,logs/sonar.log,能夠看到運行狀況了,當數據庫中表創建完成以後,再進入localhost:9001,就能夠進入sonar了。
若是不修改配置,默認的監聽端口是9000,默認的上下文路徑是/和聲納偵聽默認狀況下,全部的網絡接口:'0 .0.0.0'。一旦啓動,聲納Web服務器是可用http://localhost:9000。參數能夠改變到文件CONF / sonar.properties的「。下面是一個例子來聽http://localhost:80/sonar:
sonar.web.host:
192.0
0.1
sonar.web.port:
80
sonar.web.context:/sonar
|
進入war目錄,修改文件:sonar-server/WEB-INF/classes/sonar-war.properties
SONAR_HOME=/home/tmy/sonar/sonar-2.14
(設置變量SONAR_HOME爲sonar的解壓目錄,此處必定要修改,否則war包部署到tomcat裏面會報錯誤)
運行build-war.sh(windows 運行bat),就可以自動打出war包了。而後將war包部署到tomcat中去,就能夠運行sonar。
注意:
按照官方文檔的說明。咱們要在sonar在tomcat中運行須要一個最小堆大小爲512MB。加大對Tomcat的內存堆大小,設置啓動Tomcat以前CATALINA_OPTS變量
CATALINA_OPTS="-Xmx1024m -Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true -XX:MaxPermSize=256m"
聲納2.2以前,WAR文件必須重建每一個配置更新的時間(新插件或新的擴展)。
從聲納2.2起,WAR文件的的聲納目錄(分佈在解壓縮的目錄)。它意味着:
配置文件被更新時,必須重建WAR文件(目錄的conf /)
運行Tomcat的用戶必須有讀寫訪問聲納主目錄(例如Web管理控制檯容許插件安裝)。 |
後面還有兩種安裝方式就在這邊再也不詳細說明了,也很簡單。我把官方文檔貼出來
安裝/卸載NT服務(可能須要運行這些批處理文件,經過「以管理員身份運行」):
bin/windows-x86-
32
/ InstallNTService.bat
bin/windows-x86-
32
/ UninstallNTService.bat
|
啓動/中止服務:
bin/windows-x86-
32
/ StartNTService.bat
bin/windows-x86-
32
/ StopNTService.bat
|
如下已經過測試在Ubuntu 8.10。
建立文件/ etc / init.d/sonar與此內容:
|
在啓動時註冊聲納:
|