docker を使って sonarqube を構築する方法

docker を使って sonarqube を構築する方法

Sonarqube はコード品質チェックツールです。Sonar を使用して記述したコードをスキャンすると、コードのバグ、標準化、堅牢性をチェックでき、コードの品質を向上させることができます。

1. Dockerをインストールする

インストールが完了したら、コマンドラインを入力します。

ドッカー -v

バージョン番号が表示されたらインストールは完了です。

。 。 。 。 。 。 。 。

2. ソナーイメージをインストールする

1. コマンドラインに入力する

docker -検索ソナー

ソナーには多くのバージョンがあります:

2. コマンドを直接使用すると、docker pull sonarはデフォルトでsonarqubeの最新バージョンをダウンロードします。

docker プルソナー

ダウンロードが完了したら、docker images を実行して、ダウンロードしたイメージ ファイルを表示します。すでにsonarqubeを持っています。

3. ソナーを実行する

コマンドライン入力

docker run -p9000:9000 ソナーキューブ

sonar のデフォルト ポートは 9000 です。docker イメージのポート 9000 をホスト ポート 9000 にマッピングします。このとき、ブラウザーを開いて URL localhost:9000 を入力して docker ページに入ります。デフォルトのログイン アカウントとパスワードはどちらも admin です。これで、ソナーのインストールと操作は完了です。

4. 持続ソナー

ソナースキャンデータを保持する必要がある場合は、次のコマンドを使用してソナーを起動できます。JDBC 情報は、mysql 接続、ユーザー名、およびパスワードです。 Sonar はスキャン情報を MySQL に保存します。

docker run --restart=always -d --name sonarqube \
 	-p 9000:9000 \
 	-e sonar.jdbc.username=root \
 	-e sonar.jdbc.password=123456 \
 	-e sonar.jdbc.url=
jdbc:mysql://172.30.50.215:3306/payment?useUnicode=true&characterEncoding=UTF-8
ソナークベ

3. ソナーを使ってコードをスキャンする

ソナーページにログイン後、クリックしてプロジェクトを作成します

手動でクリックします。ここで GitHub を選択することもできます。git を使用して sonar をプロジェクトに関連付けると、コード ブランチのスキャンが容易になります。

次にプロジェクト名をランダムに入力します。プロジェクト名と同じにすることをお勧めします。

トークンを生成するには、何かを入力します (プロジェクト名と同じにすることをお勧めします)。生成後、「続行」をクリックします。

プロジェクトの場所に応じて、Maven または Gradle、あるいはその他を選択します。 Sonar は、以下のコードをスキャンするコマンドを自動的に発行します。次に、アイデアを開いて、以下のコマンドラインで実行します。ここで落とし穴があります。sonar はターゲット ディレクトリ内のクラス ファイルをスキャンするため、最初にプロジェクトをパッケージ化する必要があります。

mvn -パッケージ

その後、再度スキャンします。スキャンが完了したら、localhost:9000 に戻り、コードの品質の問題を確認できます。

注: SonarQube の最新バージョン (5.7 以上) では、MySQL はサポートされていません。他のデータベースを使用するか、バージョン 5.2 を使用することをお勧めします。

これで、docker を使用して sonarqube を構築する方法についての記事は終了です。docker を使用して sonarqube を構築する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Dockerはコード検出プラットフォームSonarQubeを構築し、Mavenプロジェクトのプロセスを検出します

<<:  要素の幅(高さ)の適応を実現するCSSおよびCSS3の柔軟なボックスモデル

>>:  iframe に関するいくつかの発見と考察

推薦する

MySQL 高可用性クラスタの展開とフェイルオーバーの実装

目次1. 内閣府1. コンセプト2. MHAの構成3. MHAの特徴2. MySQL+MHAをビルド...

Nginx/Httpd ロードバランシング Tomcat 設定チュートリアル

前回のブログでは、Nginx と httpd を使用して、逆生成用のバックエンド Tomcat サー...

JavaScript で H5 ゴールド コイン関数を実装する (サンプル コード)

今日は春節の金貨の赤い封筒のアクティビティを作りました。なかなか良い出来だと思います。皆さんと共有し...

Vue + Axios リクエストインターフェース方式とパラメータ渡し方式の詳しい説明

目次1. リクエストを取得する: 2. 投稿リクエスト: 3. 拡張と補足Vue スキャフォールディ...

CSS が複数のクラスに一致する方法のサンプルコード

CSSは複数のクラスにマッチする次の HTML タグ li、クラスはオープン スタイルです。私の要件...

Nginx ロードバランシング/SSL 構成の実装

負荷分散とは何ですか?ドメイン名が複数の Web サーバーを指している場合は、nginx ロード バ...

nginx-ingress-controller ログ永続化ソリューションのソリューション

最近、nginx-ingress-controller のアプリケーションについて説明した公開アカウ...

uniappの無痛トークンリフレッシュ方法の詳細な説明

フロントエンドがインターフェースを要求すると、バックエンドでインターフェースが定義されます。ステータ...

SQL 挿入文の書き方の説明

方法 1: INSERT INTO t1(field1,field2) VALUE(v001,v00...

TypeScript における型保護の詳細な説明

目次概要型アサーション構文ではインスタンスオブ構文typeof構文要約する概要TypeScript ...

純粋な CSS 実装 (スクリプトなし) HTML コマンド スタイルのツールチップ テキスト プロンプト効果

実行プロセスを分析します。マウスをノードに移動して、ノードにツールチップ実装を開くための識別子 (...

MySQL ページングの制限パラメータの簡単な例

Mysqlページングの2つのパラメータ ユーザー制限 1,2 から * を選択 1 は検索する最初の...

jsonファイルの書き方の詳細説明

目次JSONとはなぜこの技術なのでしょうか? JSONの使い方- データ形式- メモ- JSには2つ...

React スキャフォールディングの構築方法を学ぶ

1. フロントエンドエンジニアリングの複雑さいくつかの小さなデモ プログラムを開発するだけであれば、...