Instalar Sonar

Esta guía sirve para instalar el SonarQube (cualquier version a partir de la 4.5.7) en el localhost o en un servidor para el mismo.

Prerrequisitos
Para las versiones < 5.6: Para las versiones >= 5.6:
 * JDK 7 instalado.
 * JDK 8 instalado.

Descargar paquete
Para instalar esta versión del Sonar, se debe descargar el paquete zip de https://www.sonarqube.org/downloads/

Descomprimir el zip
El zip descargado se debe descomprimir, preferentemente, fuera del Home de los usuarios si se instalará en un servidor. Por ejemplo, se puede descomprimir en el directorio /opt/ o /srv/. Si se instalará en el localhost, no es necesario descomprimirlo fuera del Home del usuario. unzip directorio_del_zip/descarga.zip -d directorio_donde_descomprimir/

Crear usuario
Si se instalará en un servidor, conviene tener un usuario en el sistema exclusivo para el manejo del SonarQube. Por lo tanto, crearemos uno con el nombre sonar (contraseña a elección) cuyo home será el directorio donde se encuentra el Sonar.

sudo useradd sonar -d directorio/del/sonar/

Luego, debemos cambiar el dueño de las carpetas del sonar, para asignarlas al usuario creado.

sudo chown -R sonar:sonar directorio/del/sonar/

Personalizar las propiedades del Sonar
Las propiedades del Sonar se encuentran en directorio/del/sonar/conf/sonar.properties. Dentro del mismo hay varios puntos que se deben revisar/cambiar.


 * Cambiar el sonar.web.host por la ip del servidor (o localhost) en el que se instalará el sonar
 * Cambiar el sonar.web.port por el 9000 o el 9100 (si el 9000 está ocupado)
 * Descomentar la linea sonar.embeddedDatabase.port=9092 solo si se usará una base de datos local
 * Si se usará una base de datos Postgres/MySQL/etc., se debe especificar el sonar.jdbc.username, sonar.jdbc.password y el nombre de la base de datos, que se debe especificar según el motor de BD que se utilizará.
 * Asegurarse de que el sonar.search.port sea 0 (cero), para que tome un puerto libre

Script de inicio
Las versiones del SonarQube > 5.6, deben iniciar con Java 7. Para eso, podemos modificar el script de inicio del sonar, que es el bin/linux-x86-64/sonar.sh y exportar el JAVA_HOME. En este caso, tenemos instalado el java-7-oracle:

export JAVA_HOME=/usr/lib/jvm/java-7-oracle export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

Iniciar el SonarQube
Se puede iniciar el SonarQube de dos maneras.

Iniciar como servicio
Para iniciar el SonarQube como servicio, se debe añadir el script de inicio al /etc/init.d/ sudo ln -s directorio/del/sonar/bin/linux-x86-64/sonar.sh /etc/init.d/sonar-versionSonar sudo chmod 755 /etc/init.d/sonar sudo update-rc.d sonar-versionSonar defaults

Iniciar con el script
Se puede iniciar el SonarQube directamente con el script de inicio

cd bin/linux-x86-64 ./sonar.sh start