In diesem Tutorial installieren und konfigurieren Sie SonarQube auf einer ECS-Instanz (Alibaba Cloud ** Elastic Compute Service **) unter Verwendung von Ubuntu 16.04.
SonarQube kann Code statisch analysieren, um Sicherheitslücken zu erkennen, Fehler zu erkennen und Code zu überprüfen. Führt automatische Überprüfungen durch, um den Zustand Ihrer Anwendung anzuzeigen. SonarQube verfügt über ein Quality Gate, mit dem kürzlich eingeführte Fehler hervorgehoben und Lecks behoben werden können. Sie können Pull-Anforderungen analysieren, um Analysen für Feature-Zweige durchzuführen, bevor Sie sie an SonarQube senden. Auf diese Weise haben Sie die Möglichkeit, das Problem zu beheben, bevor es SonarQube erreicht.
Eine Zweiganalyse wird durchgeführt, um sicherzustellen, dass der Code sauber ist und für die Zusammenführung mit dem Master genehmigt wurde. Mit SonarQube können Sie sich mit dem Problem befassen, um es zu analysieren und in Ihrem Code zu finden. SonarQube visualisiert den Verlauf Ihres Projekts und untersucht alle Ausführungspfade.
Kurz gesagt, SonarQube hilft bei der Pflege Ihres Codes, indem Probleme, Sicherheitslücken und Codegerüche erkannt und die Ergebnisse in einem Berichtsformat bereitgestellt werden. Um SonarQube verwenden zu können, muss die Analyse-Engine-Anwendung auf dem PC des Entwicklers installiert und ein Server installiert werden, der Berichte und Aufzeichnungen zentral verwaltet. Auf diese Weise kann von mehreren Computern mehrerer Entwickler aus auf Serveranwendungen zugegriffen werden, sodass zentralisierte Berichte zur Codequalität erstellt werden können.
In diesem Lernprogramm wird SonarQube mit Ubuntu 16.04 auf einer Alibaba Cloud Elastic Compute Service (ECS) installiert. Einstellen.
Bitte aktualisieren Sie Ihr Ubuntu-System mit dem folgenden Befehl, bevor Sie mit der Paketinstallation fortfahren. Denken Sie daran, sich mit sudo-Berechtigungen eines Nicht-Root-Benutzers anzumelden, um diesen Befehl auszuführen.
# sudo apt update && sudo apt upgrade
Sie müssen ein Repository hinzufügen, um das Oracle JDK zu installieren. Um dieses Repository hinzuzufügen, müssen Sie jedoch add-apt-repository installieren, um das Repository zum apt-Paket hinzuzufügen. Führen Sie dazu den folgenden Befehl aus:
# sudo apt-get install -y software-properties-common
Jetzt müssen Sie Ihre Java JDK-Umgebung einrichten. SonarQube benötigt das Oracle JDK. Führen Sie die folgenden Schritte aus, um das Oracle JDK zu installieren.
Schritt 1: Führen Sie den folgenden Befehl aus, um das erforderliche Repository zum apt-Repository hinzuzufügen.
# sudo add-apt-repository ppa:webupd8team/java
Schritt 2: Führen Sie den folgenden Befehl aus, um das apt-Repository zu aktualisieren.
# sudo apt-get update
Schritt 3: Fahren Sie mit der JDK-Installation fort. Zum Zeitpunkt des Schreibens unterstützt SonarQube nur JDK 8, vergessen Sie also nicht, nur diese Version zu verwenden. Verwenden Sie vorerst keine andere Version.
# sudo apt install oracle-java8-installer
Sie müssen unzip installieren, da Sie den komprimierten zip-Ordner von SonarQube entpacken müssen. Führen Sie zum Installieren den Befehl aus.
# sudo apt-get install unzip
SonarQube unterstützt PostgreSQL, MySQL, MSSQL und Oracle. In diesem Tutorial wird MySQL nicht für große Instanzen empfohlen, daher verwenden wir PostgreSQL. Wenn Sie MySQL verwenden, haben Sie keine andere Wahl, als das mitgelieferte mysql-connector-java zu verwenden. Die InnoDB-Engine wird für MySQL benötigt. Um solche Einschränkungen zu vermeiden, empfehlen wir dringend die Verwendung von PostgreSQL. Führen Sie die folgenden Schritte aus, um PostgreSQL zu installieren.
Schritt 1: Installieren Sie das PostgreSQL-Repo
# sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
# wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add -
Schritt 2: Installieren Sie den PostgreSQL-Server, indem Sie den folgenden Befehl ausführen
# sudo apt-get -y install postgresql postgresql-contrib
Schritt 3: Starten Sie den PostgreSQL-Server, indem Sie den folgenden Befehl ausführen, damit er nach dem Neustart automatisch gestartet werden kann
# sudo systemctl start postgresql
# sudo systemctl enable postgresql
Gehen Sie folgendermaßen vor, um SonarQube für die kontinuierliche Überprüfung der Codequalität zu installieren:
Schritt 1: Erstellen Sie ein Verzeichnis mit dem Namen Sonar. Der Verzeichnisname kann beliebig sein. Für den nächsten Schritt bei der Installation von SonarQube müssen Sie jedoch Ihrem eigenen Verzeichnispfad folgen.
# sudo mkdir /opt/sonar
Schritt 2: Geben Sie nun dem Benutzernamen in dem von Ihnen erstellten Verzeichnis Berechtigungen, damit Sie Änderungen vornehmen können. Führen Sie dazu den folgenden Befehl aus. Vergessen Sie nicht, aareez durch Ihren Benutzernamen zu ersetzen.
# sudo chown -R aareez:aareez /opt/sonar
Nachdem Sie Ihren Server eingerichtet und Ihre PostgreSQL-Datenbank installiert haben, installieren wir SonarQube. Befolgen Sie diese Schritte, um SonarQube herunterzuladen und zu installieren.
Schritt 1: Navigieren Sie zu dem Verzeichnis / opt / sonar, das Sie für SonarQube erstellt haben.
# cd /opt/sonar
Schritt 2: Jetzt müssen Sie eine Kopie von SonarQube von der offiziellen Website herunterladen. Führen Sie dazu den folgenden Befehl aus:
# sudo wget https://sonarsource.bintray.com/Distribution/sonarqube/sonarqube-7.2.1.zip
Schritt 3: Sie können jetzt den CLI-komprimierten Zip-Ordner anzeigen, indem Sie den Befehl ausführen.
# ls -li
Entpacken Sie den komprimierten Ordner und entpacken Sie die Datei. Führen Sie dazu den folgenden Befehl aus:
# sudo unzip sonarqube-7.2.1.zip
Führen Sie die folgenden Schritte aus, um die Datenbank zu erstellen und zu konfigurieren.
Schritt 1: Ändern Sie das Passwort des Postgres-Benutzers und wechseln Sie zum Postgres-Benutzer. Führen Sie den folgenden Befehl aus, um das Kennwort zu ändern.
# sudo passwd postgres
Führen Sie den folgenden Befehl aus, um zum Benutzer postgres zu wechseln.
# su - postgres
Schritt 2: Führen Sie den folgenden Befehl aus, um einen neuen Benutzer zu erstellen.
# createuser sqube
Schritt 3: Öffnen Sie nun die Postgres-Shell, um die Abfrage auszuführen. Führen Sie den Befehl aus, um ihn zu öffnen.
# psql
Schritt 4: Führen Sie die folgende Abfrage aus. Die erste Abfrage erstellt das Kennwort des Benutzers, die zweite Abfrage erstellt die Datenbank, weist dem Benutzer Datenbankberechtigungen zu und die dritte Abfrage beendet den MySQL-Server.
ALTER USER sqube WITH ENCRYPTED password '654321Ab'.
CREATE DATABASE sqube OWNER sqube.
\q
Schritt 5: Führen Sie den folgenden Befehl aus, um zum sudo-Benutzer zurückzukehren.
# exit
Um mit SonarQube zu beginnen, müssen Sie einige Grundeinstellungen vornehmen, z. B. Datenbankeinstellungen und die Ausführung im Servermodus.
Öffnen Sie die Datei sonar.properties, legen Sie den Datenbankbenutzernamen und das Kennwort fest und beschreiben Sie den Treiber, mit dem SonarQube eine Verbindung zur Datenbank herstellt. Führen Sie den folgenden Befehl aus, um die Datei zu öffnen.
# cd /opt/sonar
# sudo nano sonarquebe-7.2.1/conf/sonar.properties
Durch Ausführen des obigen Befehls wird das Dokument geöffnet. Der folgende Bereich wird angezeigt. Entfernen Sie # vom Anfang beider Zeilen und schreiben Sie den MySQL-Benutzernamen und das Kennwort, die Sie beim Erstellen der Datenbank festgelegt haben.
Suchen Sie den Teil von sonar.jdbc.url unten und entfernen Sie das #, um ihn zu kommentieren. Dies führt dazu, dass SonarQube PostgreSQL verwendet, und Sonar muss mit dem Datenbanknamen sqube geändert werden.
Suchen Sie hier nach sonar.web.host. Kommentieren Sie diese Zeile aus, indem Sie das # entfernen und die IP in 127.0.0.0.1 ändern.
Suchen Sie hier nach sonar.web.javaAdditionalOpts, entfernen Sie das #, kommentieren Sie die Zeile aus und ändern Sie den Wert in -server.
Nachdem Sie Änderungen vorgenommen haben, drücken Sie Strg + X, geben Sie Y ein und drücken Sie die Eingabetaste, um Ihre Einstellungen zu speichern.
SonarQube überwacht standardmäßig Port 9000 auf dem lokalen Host. Für den Zugriff über den Standard-HTTP-80-Port muss ein Reverse-Proxy konfiguriert sein.
Befolgen Sie die nachstehenden Anweisungen, um die Einstellungen vorzunehmen.
Schritt 1: Führen Sie den Befehl aus, um den Proxy-Modus zu aktivieren.
# sudo a2enmod proxy
# sudo a2enmod proxy_http
Schritt 2: Fahren Sie mit der Konfiguration des virtuellen Hosts fort. Fahren Sie mit dem Erstellen eines virtuellen Hosts fort, indem Sie den folgenden Befehl ausführen.
# sudo nano /etc/apache2/sites-available/softpedia.xyz.conf
Schritt 3: Fügen Sie der geöffneten Datei den folgenden Text hinzu, drücken Sie Strg + X, geben Sie Y ein und drücken Sie die Eingabetaste, um die Datei zu speichern.
ProxyRequests Off
ProxyPreserveHost On
<VirtualHost *:80>
ServerName www.softpedia.xyz
ServerAdmin [email protected]
ProxyPreserveHost On
ProxyPass / http://localhost:9000/
ProxyPassReverse / http://www.softpedia.xyz/
</VirtualHost>
Schritt 4: Sie müssen den neu erstellten virtuellen Host aktivieren und dann den Apache-Server starten und aktivieren. Führen Sie dazu den Befehl aus.
# sudo a2ensite softpedia.xyz.conf
# sudo systemctl start apache2
# sudo systemctl enable apache2
Schritt 5: Fügen Sie einen Nicht-Root-Benutzer namens Sonar hinzu.
# sudo adduser sonar
Weisen Sie dem Verzeichnis / opt / sonar Sonar-Benutzerberechtigungen zu.
# sudo chown -R sonar:sonar /opt/sonar
Öffnen Sie nun die Bash-Datei, um run_as_user zuzuweisen.
# sudo nano /opt/sonar/sonarquebe-7.2.1/bin/linux-x86-64/sonar.sh
Suchen Sie RUN_AS_USER in der geöffneten Datei, entfernen Sie das # -Zeichen, kommentieren Sie es aus und fügen Sie den Wert als Sonar hinzu.
Führen Sie den folgenden Befehl aus, um SonarQube zu starten.
# opt/sonar/sonarqube-7.2.1/bin/linux-x86-64/sonar.sh start
Führen Sie den folgenden Befehl aus, um SonarQube zu starten.
# /opt/sonar/sonarqube-7.2.1/bin/linux-x86-64/sonar.sh stop
Tut mir leid, dass ich dich warten ließ. Damit ist die Installation und Konfiguration von SonarQube abgeschlossen. Einfacher Zugriff über den Domainnamen. In meinem Fall verwende ich www.softpedia.xyz.
Recommended Posts