Amazon LightsailのインスタンスにSonarQubeを立ち上げる
趣味で作っているコードにSonarQubeの静的コード解析を組み込みたいなと思った。 Amazon Lightsailが最近東京リージョンに対応したので、インスタンスを立ち上げてそこにSonarQubeを構築してみることにした。
Amazon Lightsailを使ってみて
- AWSが定量課金なのに対して、月あたりの定額なので個人利用するときは使い過ぎを心配せずに使える。
- ただスペックに対してちょっと高めかも?(https://amazonlightsail.com/pricing/)
- 操作が簡単で、「インスタンスを選ぶ -> keypairをダウンロードする -> スペックを選ぶ -> 名前を付ける」だけで終わる。
- GUI上からssh可能(セキュリティ上、鍵がなくてもsshできることになるので不安になるが…)
- 細かい設定ができないので、サービス向きではなさそう。
SonarQubeのインストール
# Java ダウンロード(Java7から8へ) $ yum install java-1.8.0-openjdk.x86_64 $ alternatives --config java $ yum install java-1.8.0-openjdk-devel.x86_64 # MySQL ダウンロード $ yum -y install http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm $ yum repolist enabled | grep "mysql.*-community.*" $ yum info mysql-community-server $ yum -y install mysql-community-server $ mysql --version $ chkconfig mysqld on $ service mysqld start $ mysql_secure_installation # MySQLにDB,User作成 mysql> CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; mysql> CREATE USER 'sonar' IDENTIFIED BY 'xxx'; mysql> GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'xxx'; mysql> GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'xxx'; mysql> exit # SonarQube インストール $ wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-6.4.zip $ mv ./sonarqube-6.4.zip /opt/ $ cd /opt/ $ unzip ./sonarqube-6.4.zip $ ln -s sonarqube-6.4 sonar $ cd /opt/sonar/conf $ vim sonar.properties // jdbc設定 $ cd /opt/sonar/bin/linux-x86-64 $ ./sonar.sh start # Nginx インストール $ yum install -y nginx $ vim /etc/nginx/nginx.conf // 9000番ポートへproxy設定