セキュリティ/静的解析/Sonar/sonarqubeインストール
提供: 初心者エンジニアの簡易メモ
目次
sonarqubeインストール
$ cd /usr/local/src $ wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.2.1.zip $ unzip sonarqube-6.2.1.zip $ cd sonarqube-6.2.1
sonar起動(linux
$ sudo sh bin/linux-x86-64/sonar.sh start
sonar起動(mac
$ sudo sh bin/macosx-universal-64/sonar.sh start
Failed to start SonarQube.エラーとなる場合
- 実行権限があるか確認。
- mysqlなどの設定が正しいか確認。
- mysql5.5以上であること
- dbとサービスのport間違ってないか確認。
こちらはdbのport
sonar.embeddedDatabase.port=9092
こちらはサービスport
sonar.web.port=9000
upgradeしてくださいエラー
web[o.a.c.c.StandardContext] One or more listeners failed to start. Full details will be found in the appropriate container log file
参考:http://stackoverflow.com/questions/37336739/sonarqube-webapp-did-not-start
httpアクセス
- http://[ip-address]:9000
- デフォではadmin/adminでログインできる
- 起動が遅いので2分ぐらい待ったほうが良い。
- 9000はphp-fpmとかぶるのでphp-fpmを使ってる場合はportを変えた方が良い
- 9001はsonar-searchが使っているので9002がいいかも
開けない場合は以下コマンド実行
$ sh bin/linux-x86-64/sonar.sh console
このエラーが出てたらポートが使われているので、他のポートで起動する
java.net.BindException: Address already in use
Unsupported major.minor version 52.0エラーが出てる場合
以下設定したjavaのversionを8以上に上げる(7だとエラーになる)
$ vi conf/wrapper.conf wrapper.java.command=java $ java -version java version "1.7.0_121" x java version "1.8.0_131" o
コンフィグ
vi conf/sonar.properties
503エラーとなる場合
- バージョンをかえてみる
- sonarを起動してから2分ぐらい待ってみる
sonarのphpプラグイン導入
設置したsonarのウェブ画面に入り初期admin:adminでloginする
administration/System/"Update Center"/available/SonarPHP
phpを選択してinstall
だめなら以下で直接DL
$ cd sonarqube-6.2.1/extensions/plugins $ wget https://sonarsource.bintray.com/Distribution/sonar-php-plugin/sonar-php-plugin-2.9.2.1744.jar
sonar管理画面の"Configuration/GeneralSettings"にphpルールが追加されていることを確認。
直接DLした場合はSonarQubeの再起動が必要
sonarのdbをmysqlに変更
conf/sonar.properties
- #sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
- #sonar.jdbc.username= - #sonar.jdbc.password= sonar.jdbc.username=sonar sonar.jdbc.password=sonar
dbを作る
mysql> GRANT ALL privileges ON *.* TO sonar@localhost IDENTIFIED BY 'sonar' WITH GRANT OPTION; mysql> CREATE DATABASE sonar DEFAULT character SET utf8 COLLATE utf8_general_ci;
参考
http://www.sdmemo.com/wiki/Ant,Jenkins,Sonar%E3%81%AE%E5%B0%8E%E5%85%A5%E6%89%8B%E9%A0%86
http://www.sdmemo.com/wiki/Maven,Jenkins,Sonar%E3%81%AE%E5%B0%8E%E5%85%A5%E6%89%8B%E9%A0%86