展開構成と前1.SonarQubeカーネルパラメータのJava環境の設定
1)環境要件を満たしているカーネル・パラメーターを変更
[ルート@ sonarqube〜]#Vimの/etc/sysctl.confの
vm.max_map_count = 262144
fs.file-MAX = 65536
カーネルパラメータ[ルート@ sonarqubeは〜]#sysctlを -p# 開始修正
......
vm.max_map_count = 262144の
FS .FILE-MAX = 65536
2)ネイティブセキュリティポリシーパラメータの上限を変更します
[ルート@のsonarqube〜]#Vimの/etc/security/limits.confを
......
sonarqube - NOFILE 65536
sonarqube - NPROC 2048
3)Java環境を設定し(少なくともJDK-8 OpenJDKの-8またはバージョン)
[ルート@のsonarqube〜]#のLSは/ usr / local / srcに/
JDK-8u211-のlinux-x64.tar.gz
[ルート@ sonarqubeのソース]#タールあるxv JDK-8u211-のlinux-x64.tar.gz
[ルート@ sonarqube SRC] #ln -sv jdk1.8.0_211 JDK
[ルート@ sonarqubeソース] #ln -sv JDK
[ルート@ sonarqubeのソース]#LN -sv JDK / binに/ *は/ usr / binに
[ルート@のsonarqubeのソース]#のvimの/ etc / profileを
......
輸出輸出LANG = "EN_US.UTF-8"
輸出JAVA_HOME =は/ usr / local / jdkの
輸出PATH = $ JAVA_HOME / binに:$ JAVA_HOME / JRE / binにします。$ PATHの
輸出CLASSPATH = $ JAVA_HOME / libに: $ JAVA_HOME / JRE / libに:$ JAVA_HOMEが/ libに/ tools.jarを
2.データベースの準備(sonarqube7.9バージョンは、もはや例えばsonarqube6.7ためにここには、MySQLをサポートし、少なくともmysql5.6を必要としています)
1)先に優れたデータとデータベース・ユーザーの関連パスの定義が開始します
[ルート@ sonarqubeは〜]#はパスます。mkdir /データ/ MySQLの#データベースのデータを保存し
、[ルートの@ sonarqube〜]#個ます。mkdir /データ/ binlogの/ binに# バイナリログストアディレクトリ
[ルート@ sonarqube〜]#chownコマンドの mysql.mysql - R&LT /データ/ビンログ
[ルート@をsonarqube〜]#chownコマンド-R&LT mysql.mysql /データ/ MySQLの
[ルート@をsonarqube〜]#useraddの-s / sbinに/ nologinに/ MySQLの-u 1234
2)ソースコードのアーカイブをダウンロードmsyql
[ルート@ sonarqube〜]#のLS /アプリケーション/ mysqlの/
mariadb-10.2.23-linuxの-x86_64.tar.gz
3)解凍し、ソフトリンクを作成
mariadb-10.2.23-のlinux-x86_64.tar.gzあるxv [ルート@のsonarqube〜]#タール
[ルート@ sonarqube〜]#のLN -sv mariadb-10.2.23-のlinux-x86_64版のMySQL
4)ソフトリンクの実行可能なバイナリファイルを作成します。
[ルート@のsonarqube〜]#LN -sv /アプリケーション/ mysqlの/ mysqlの/ binに/ *は/ usr / sbinに/
5)起動スクリプトファイルのmysqlを変更
[sonarqubeルート@〜]#Vimの/apps/mysql/mysql/support-files/mysql.server
......
BASEDIR = /アプリ/ mysqlの/ mysqlの#mysqlのインストール操作定義されたディレクトリ
のmysqlを定義しDATADIR = /データ/ mysqlの#データベースファイルディレクトリを保存し
......
6)ホスト名の解決提案された変更は、ローカルホスト名がローカルループバックに解決変更します
[ルート@のsonarqube〜]#のvimの/ etc / hostsの
127.0.0.1 localhostのsonarqube localhost.localdomainをlocalhost4 localhost4.localdomain4
......
初期7)データベースの実行
[ルート@ sonarqubeスクリプト]#のPWD
/アプリ/ MySQLの/ MySQLの/スクリプト
[ルート@ sonarqubeスクリプト]#LS
mysql_install_dbの
[ルート@ sonarqubeスクリプト]#mysql_install_dbの--user = MySQLの--datadir = /データ/ MySQLの
8)MySQLサービスを開始
[ルート@のsonarqubeサポート-ファイル]#のPWD
/アプリケーション/ mysqlの/ mysqlの/サポート・ファイル
[ルート@のsonarqubeサポート-ファイル]#のバッシュmysql.serverを開始
9)ポートは3306を起動するかどうかを確認してください
[ルート@ sonarqube〜] -tnlp#ssの
状態のRecv-Q送る-Qローカルアドレス:ポートピアアドレス:ポート
......
0 80 ::: 3306をLISTEN ::: *
ユーザー:(( "のmysqld"、PID = 9865、 FD = 18))
......
10))のデータベースを作成し、sonarqube(キャラクタ・セットUTF8を認可
MariaDB [(なし)]> [データベースsonarqubeのデフォルト文字セットのutf8コレートutf8_general_ciを作成します。
MariaDB [(なし)]> sonarqubeに全てを付与* '123456'によって識別' sonarqube@'192.168.1.31します。
11)ユーザがデータベースsonarqubeをログに記録することができるかどうかをテスト
[ルート@ sonarqube〜]#mysqlの-usonarqube -p123456 -h192.168.1.31
MariaDBモニタへようこそ。コマンドは、で終わります。や\ g。
あなたのMariaDBの接続IDが12である
サーバーのバージョン:10.2.23-MariaDBログMariaDB Serverの
著作権(C)2000、2018、MariaDB株式会社アブなどがあります。
「助けを;」タイプ 助けのためか、「\ hを」。型「\ c」が現在の入力文をクリアします。
MariaDB [(なし)]>
MariaDB [(なし)]>ショーデータベース;
+ -------------------- +
| データベース|
+ -------------------- +
| INFORMATION_SCHEMA |
| sonarqube |
| テスト|
+ -------------------- +
組の3行(0.00秒)
3.sonarqube-6.7のインストール構成
1)ソースアーカイブをダウンロード
[ルート@のsonarqube〜]#のLS /アプリケーション/ sonarqube
sonarqube-6.7.7.zip
2)sonarqubeソースパッケージを抽出し、ソフトリンクを作成します
[ルート@ sonarqubeのsonarqube]#解凍sonarqube-6.7.7.zip
[ルート@ sonarqubeのsonarqube]#LN -sv sonarqube-6.7.7 sonarqube
'sonarqube' - > 'sonarqube-6.7.7'
3)ユーザーを作成し、ディレクトリの所有者がグループで変更
[ルート@のsonarqubeのsonarqube]#useraddのsonarqube
[ルート@のsonarqubeのsonarqube]#chownコマンドsonarqube.sonarqube -R /アプリケーション/ sonarqube /
4)設定sonarqubeプロフィール
[ルート@のsonarqube confに]#suコマンド- sonarqube
最終ログイン:月7月29日13時48分33秒CST 2019 PTS / 1で
[sonarqube @ sonarqube〜] $のCD /アプリケーション/ sonarqube / sonarqube
[sonarqube @ sonarqube sonarqube] $のはgrep " ^ [AZ]」のconf / sonar.properties
sonar.jdbc.username = sonarqube
sonar.jdbc.password = 123456
sonar.jdbc.url = JDBCます。mysql://192.168.1.31:?3306 /ソナーuseUnicode =真&characterEncoding = UTF8&rewriteBatchedStatements =真&useConfigs = MAXPERFORMANCE&useSslオプション= falseを
sonar.web.host = 0.0.0.0
sonar.web.port = 9000
5)sonarqubeサービスを開始
[sonarqube @ sonarqube sonarqube] $が開始./bin/linux-x86-64/sonar.sh
SonarQubeを開始しています...
SonarQubeを開始しました。
6)チェックリスニングポート
-tnlp [sonarqube @ sonarqube sonarqube] $ ssの
ポートピアアドレス:国家のRecv-Q送信-Qローカルアドレスポートは、
0〜128 *をLISTEN:111 *:*
0 128 *をLISTEN:22 *:*
0 100 127.0.0.1をLISTEN: 25 *:*
LISTEN 0~1 127.0.0.1:32000 *:*
ユーザー:(( "ジャワ"、PID = 10447、FD = 4))は、
0〜25 ::: 9000 ::: * LISTEN
(( "ジャワ":ユーザーを、PID = 10544、FD = 116))
0 128 :: FFFFを聴きます: 127.0.0.1:9001 ::: *
ユーザー:(( "javaの"、PID = 10467、FD = 100))
0 80 ::: 3306をLISTEN ::: *
0 128をLISTEN ::: 111 ::: *
0 128 ::: 22 LISTEN ::: *
0 100 :: 1 LISTEN:25 ::: *
0 50 :: FFFF LISTEN:127.0.0.1:9092 ::: *
ユーザー:(( "Javaの」PID = 10544、FD = 148))
7)ブラウザアクセスsonarqube
8)ユーザー名とパスワードでログオンがデフォルトで管理されています
9)Webページのログインsonarqubeの成功
4.プラグの取り付けは、中国語、中国のインタフェースが表示さ
1)管理→マーケット、中国のダイレクト検索プラグインをクリックします。
2)インストール[インストール]をクリックします
3)再起動サービス
[sonarqube @のsonarqubeのlinux-のx86-64] $ ./sonar.sh再起動
4)、再度表示中国語インタフェースにアクセスする場合
5)中国のビューは、プラグイン・パッケージをインストール
[sonarqube @ sonarqube sonarqube] $のLLの拡張/プラグイン/
...
-rw-rを- r--の1 sonarqube sonarqube 38307 7月29日15時05ソナー-L10N-ZH-プラグイン1.19.jar
......
関連する言語コードをスキャンするために6)のインストール、Java(登録商標)、PHPと他の開発言語プラグイン
配備スキャナソナー・スキャナ(スキャナによってsonarqubeスキャンコード)
1)スキャナバイナリアドレス×××
https://binaries.sonarsource.com/Distribution/sonar-scanner-cli
2)指定したディレクトリにスキャナをダウンロード
[ルート@のsonarqubeのsonarscanner]#のPWD
/アプリ/ sonarscanner
[ルート@のsonarqubeのsonarscanner]#1 LL -h
合計41M
-rw-R - r--の1つのルートのルート41M 7月22日午前19時31 sonarscanner-CLI-4.0。 0.1744-linux.zip
3)ソフトリンクを作成するために、ソースコードやバイナリスキャナを抽出
[ルート@ sonarqubeのsonarscanner]#解凍sonar-scanner-cli-4.0.0.1744-linux.zip
[ルート@のsonarqubeのsonarscanner]#件のls
sonarscanner-4.0.0.1744-Linuxのsonarscanner-CLI-4.0.0.1744-linuxの。ジップ
[ルート@ sonarqube sonarscanner]#LN -sv sonarscanner-4.0.0.1744-Linuxのsonarscanner
'sonarscanner' - > 'sonarscanner-4.0.0.1744-Linuxの
4)設定ファイルを変更します
[ルート@ sonarqubeソナースキャナ]#のvimのconfに/ sonar-scanner.properties
......
#-----デフォルトSonarQubeサーバ
sonar.host.url =のhttp://192.168.1.31:9000
#-----デフォルトソースコードエンコーディング
sonar.sourceEncoding = UTF-8
5)圧縮されたパケットにテストコードを準備し、カレントディレクトリを抽出します
[ルート@ sonarqubeコードテスト]#のPWD
/アプリケーション/コード検定
[ルート@のsonarqubeコードテスト]#1 LL -h
合計6.5M
-rw-R - r--の1つのルートのルート6.5M 2018年11月21日sonar- examples-master.zip
[ルート@のsonarqubeコードテスト]#解凍sonar-examples-master.zip
6下)テストパスのソースに
[ルート@のsonarqube PHP-ソナーランナー]#のPWD
/アプリケーション/コードテスト/ソナー-例マスタ/プロジェクト/言語/ PHP / PHP-ソナー・ランナー
[ルート@のsonarqube PHP-ソナーランナー]#LLを
合計12
-rw-R - r--の1ルートルート453 2016年7月25日README.md
-rw-R - r--の1ルートルート331 2016年7月25日sonar-project.properties
drwxr-XR-X 2ルートルート7月22日25 2016 SRC
-rw-rを- r--の1つのルートルート272 2016年7月25日validation.txt
7)デフォルトの設定ファイルには、コードを生成しました
[ルート@のsonarqube PHP-SONAR-ランナー] CAT sonar-project.properties#の
#必要なメタデータ
sonar.projectKey = org.sonarqube:シンプルなPHP-Scanner-#SQ-ボリュームのカスタムプロジェクトキー
sonar.projectName単純なプロジェクト:: PHP = :: sonarQubeスキャナ#プロジェクト名
sonar.projectVersion =#バージョン1.0プロジェクト
#カンマ区切りパスをソースとディレクトリへの(必要な)
ソースパス= SRC#1 sonar.sources
#言語
の型sonar.language = PHP#ソースコードをPHPコード
ソースの#エンコーディングはファイル
sonar.sourceEncoding = UTFエンコード形式を8#
8)現在のコードパスに走査を行います
[ルート@のsonarqubeのphp-ソナー-ランナー]#/アプリケーション/ sonarscanner / sonarscanner / binに/ sonarscanner
......
TLY、それを指定します。
INFO:1ファイルのためのCPDを計算
INFO:CPDの計算が終了し
213msで生成された分析レポート、DIRサイズ= 34キロバイト:INFOは
INFO:42msで圧縮された分析レポート、ジッパーサイズ= 10キロバイト
INFO:3108msでアップロード分析レポート
INFO:ANALYSIS SUCCESSFUL、あなたはhttp://192.168.1.31:9000/dashboard/index/org.sonarqube:php-simple-sq-scanner閲覧することができ
、サーバが提出した分析レポートを処理した後に更新されたダッシュボードにアクセスできるようになることに注意してください。INFOを
INFO:レポート処理の詳細http://192.168.1.31:9000/api/ce/task?id=AWw9AEUVHii-ILef0qYqで
INFO:タスク合計時間:17.226秒
INFO:------------------------------------------------ ------------------------
INFO:実行SUCCESS
INFO:-------------------- -------------------------------------------------- -
INFO:合計時間:29.467s
INFO:最終メモリ:7M / 115M
INFO:------------------------------- -----------------------------------------
9)ウェブ端ビュースキャン記録した後に生成
6.jenkins構成sonarqubeスキャナと自動テストジェンキンスコード、自動的にデプロイ
1)スキャナプラグインをインストール
2)システム設定sonarqubeサービスをクリックします
3)sonarqubeサービスを追加し、サービス名をカスタマイズして、URLアドレス
4)自動スキャナスキャナをインストール
5)インストールした場合はスキャナスキャナは自動的にインストールする必要はありません、作業ディレクトリスキャナに直接追加
6)ジェンキンスで新しいプロジェクトのコード・テスト・ジョブを作成します
7)このプログラムの設定を構成します
Gitlab指定されたウェアハウス・ソース、認証
パスワードビルドトリガーキー
検出コード符号化フォーマット、パスなどのタイプを指定スキャン設定パラメータコード
8)自動トリガ・ジェンキンスを構築するプロジェクトを実現するために、ジェンキンスアドレス認証を追加するgitlabサーバーにフック
9)クローンgitlab倉庫コードとジェンキンスを構築するためのgitlab倉庫プロジェクトをトリガするためにコードを変更し、それをアップロード
指定されたクローンは、支店コードを開発します
1804 @ルート:/データ/ srcに#gitのクローン-b http://192.168.1.30/jie/web-page.gitを開発
... 'ウェブページ'へのクローニング
'http://192.168.1.30'のユーザー名を:傑の
'://[email protected]のhttp'のパスワード
リモート:列挙オブジェクト:30、行わ。
リモート:カウント・オブジェクト:100%(30/30)、行います。
リモート:圧縮オブジェクト:100%(13/13)、行います。
リモート:合計30(デルタ4)、27(デルタ4)再利用
行わ、100%(30/30):開梱オブジェクトを。
ディレクトリのPHPのクローンにソースファイルを追加します。
ルートの@ ubuntu1804:/データ/ SRC /ウェブページ#mvと/data/Math.php ./
ルートの@ ubuntu1804:/データ/ SRC /ウェブページ#のLS
index.htmlをMath.php
地元のステージングエリアにコードを追加します。
ルートの@ ubuntu1804:/データ/ SRC /ウェブページ#gitの追加./*
コードは、作業エリアに提出し、区別の複数の提出を提出するために、バージョン番号を指定します
ルートの@ ubuntu1804:/データ/ SRC /ウェブページ#gitのは、-m 'V11'をコミット
V11 [9e106d4開発]
1ファイルを、214の挿入(+)に変更
モード100644 Math.phpを作成
コードライブラリコードはgitlabにアップロードされています
ルートの@ ubuntu1804:/データ/ SRC /ウェブページ#のGitのプッシュ
'http://192.168.1.30'のユーザー名:傑の
'://[email protected]のhttp'のパスワード
カウントオブジェクト:3、行わ。
4つのスレッドまで使用してデルタ圧縮。
圧縮オブジェクト:100%(3/3)が行わ。
書き込みオブジェクト:100%(3/3)、1.75 KiBの| 893.00 KiBの/ sが、行って。
トータル3(デルタは0)、0(デルタ0)を再利用し
たリモート:
リモート:訪問し、開発のためのマージ要求を作成するには:
リモート:http://192.168.1.30/jie/web-page/merge_requests/new?merge_request%5Bsource_branch %5D =開発
リモート:
http://192.168.1.30/jie/web-page.gitに
3fb434f..9e106d4開発- >開発
10)gitlabサーバー側のコードが正常に送信されました確認してください
プロジェクトのビルドgitlabのジェンキンスにコードを提出する)11後に自動的にトリガ
成功したコンソール出力情報を構築するため12)Viewプロジェクト
13)sonarqubeサーバサーバPHPコード記録されたテスト結果を見ます