SonarQube es un programa de código abierto para analizar la calidad del código, anteriormente se conocía como Sonar. Aquí le informaremos los comandos y pasos para instalar SonarQube en el servidor Ubuntu 20.04/18.04 LT
Este programa puede encontrar las vulnerabilidades de seguridad en más de 20 lenguajes de programación junto con el análisis automático de la calidad del código para detectar errores y olores en el código. También ofrece informes sobre código duplicado, estándares de codificación, pruebas unitarias, cobertura de código, complejidad de código, comentarios, errores y vulnerabilidades de seguridad.
Instalación de SonarQube en servidor Ubuntu 20.04 LTS
1. Ejecute la actualización del sistema Ubuntu
Lo primero que debemos hacer antes de instalar cualquier software en Linux usando el terminal de comando es ejecutar el comando de actualización, por lo tanto, ejecute:
sudo apt update
2. Instalar Java OpenJDK
Java es uno de los requisitos para instalar y configurar SonarQube en Ubuntu 20.04 o 18.04 y sus sistemas operativos basados.
sudo apt install openjdk-11-jdk
Aumenta la memoria virtual
sudo sysctl -w vm.max_map_count=524288 sudo sysctl -w fs.file-max=131072 ulimit -n 131072 ulimit -u 8192
Reinicia tu sistema una vez...
3. Crear un usuario Dedicado para Sonarqube
La última versión de Sonar no puede ejecutarse con un usuario root, por lo que crearemos un nuevo usuario para acceder solo a la instalación de Sonarqube.
Añadir usuario
sudo useradd sonarh2s
Establecer contraseña para el usuario creado
sudo passwd sonarh2s
Nota :puedes cambiar sonarh2s con cualquier nombre de usuario y contraseña desea configurar.
3. Instalar la base de datos PostgreSQL
El repositorio base de Ubuntu no tiene la última versión de PostgreSQL, por lo tanto, para obtener la última, debemos agregar su repositorio manualmente. Aquí está el comando para hacer eso.
Añadir clave GPG:
wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O- | sudo apt-key add -
Añadir repositorio:
echo "deb [arch=amd64] http://apt.postgresql.org/pub/repos/apt/ focal-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list
Ejecutar actualización del sistema
sudo apt update
Instalar PostgreSQL 13
sudo apt install postgresql-13
Puede comprobar el estado de su servicio usando
sudo systemctl status postgresql
4. Crear una base de datos para Sonar
sudo passwd postgres
postgres
usuario. Utilice la contraseña que ha establecido anteriormente.
su - postgres
createuser sonaruser
Nota :Cambiar sonaruser
en el comando anterior con lo que quieras usar.
psql
ALTER USER sonaruser WITH ENCRYPTED password 'yourpassword';
Nota :cambia los elementos en negrita con lo que quieras usar.
CREATE DATABASE sonardb OWNER sonaruser;
Nota :Puede usar el nombre de la base de datos según su elección y tampoco olvide reemplazar el usuario en el comando anterior con el que ha creado.
psql
concha:
\q
exit
5. Descargue y configure SonarQube en Ubuntu 20.04/18.04
Mientras escribía este artículo, la última versión de Sonarqube era v-9.0.1 disponible para descargar. Sin embargo, puede visitar directamente el sitio web oficial para obtener la última versión. También puede visitar la página de descarga y copiar el enlace para descargar con wget comando, como hemos hecho aquí:
wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.0.1.46107.zip
Extraer y mover a /opt
directorio:
sudo apt -y install unzip
sudo unzip sonarqube-*.zip -d /opt
sudo mv /opt/sonarqube-* /opt/sonarqube
Nota :si ha descargado el archivo usando el navegador, primero debe cambiar a Descargas directorio antes de ejecutar los comandos anteriores
Configurar base de datos para Sonar
sudo nano /opt/sonarqube/conf/sonar.properties
Como se muestra en la captura de pantalla, copie y pegue las siguientes líneas. Después de eso, cambie los valores en negrita:
sonar.jdbc.username=sonaruser sonar.jdbc.password=yourpassword sonar.jdbc.url=jdbc:postgresql://localhost/sonardb
Simplemente reemplace estos valores con los que usó al crear una base de datos en Postgresql para Sonarqube.
explicación del comando:
usuario de sonar – es un nombre de usuario de base de datos
tucontraseña – es la contraseña de la base de datos
sonardb – es el nombre de la base de datos que hemos creado
Para guardar y salga del archivo- presione Ctrl+X y luego escriba- Y y pulsa Intro clave.
6. Crear archivo de servicio de SonarQube Systemd
Por defecto, no habrá ningún archivo de servicio para que Sonarqube lo inicie en segundo plano y con el arranque del sistema. Por lo tanto, tenemos que crear uno manualmente. Este es el camino:
sudo nano /etc/systemd/system/sonar.service
Copie y pegue las siguientes líneas:
[Unit] Description=SonarQube service After=syslog.target network.target [Service] Type=forking ExecStart=/opt/sonarqube/bin/linux-x86-64/sonar.sh start ExecStop=/opt/sonarqube/bin/linux-x86-64/sonar.sh stop LimitNOFILE=131072 LimitNPROC=8192 User=sonarh2s Group=sonarh2s Restart=on-failure [Install] WantedBy=multi-user.target
Nota :reemplaza el valor de Usuario y Grupo con el nombre de usuario que has creado al principio del artículo para Sonarqube.
Guardar el archivo- presiona Ctrl+X luego escriba- Y y pulsa Intro clave.
Recargar el demonio:
sudo systemctl daemon-reload
Luego inicie y habilite el servicio
sudo systemctl enable sonar sudo systemctl start sonar
Ahora, compruebe si el servicio de creación de Sonarqueb se está ejecutando o no
sudo systemctl status sonar
[opcional] Alternativamente , también puede usar los siguientes comandos para iniciar, detener y verificar el estado:
sudo -Hu sonar /opt/sonarqube/bin/linux-x86-64/sonar.sh status
sudo -Hu sonar /opt/sonarqube/bin/linux-x86-64/sonar.sh start sudo -Hu sonar /opt/sonarqube/bin/linux-x86-64/sonar.sh stop
Para obtener la consola salida para saber lo que está pasando al iniciar el servidor de Sonarqube puede utilizar:
sudo -Hu sonar /opt/sonarqube/bin/linux-x86-64/sonar.sh console
Esto será útil para resolver algunos errores.
7. Permitir el puerto de Sonarqube en el firewall de Ubuntu 20.04
Para acceder a la interfaz web de Sonarqube hay que abrir su 9000 predeterminado puerto en el firewall de su sistema Ubuntu:
sudo ufw allows 9000/tcp
8. Acceda a la interfaz web de Sonarqube e inicie sesión con el nombre de usuario de administrador predeterminado
Por último, abre cualquier navegador que pueda acceder a la dirección IP o dominio del servidor donde tienes instalado Sonarqube. Y apúntalo a-
http://server-ip-addres:9000 or http://you-somain.com:9000
Nota :Reemplazar server-ip-addres
con su servidor/dirección IP de escritorio o nombre de dominio.
Una vez que vea la pantalla de inicio de sesión, use el nombre de usuario y contraseña predeterminados de Sonarqube eso es admin
.
cuando le pida que cambie la contraseña anterior, hágalo.