はじめに
Jenkinsは、CI / CDと呼ばれる、継続的インテグレーションとデリバリーのためのプラットフォームに依存しないアプリケーションです。このソフトウェアは、開発者がソフトウェア開発ライフサイクル中にタスクとソフトウェアテストを自動化するのに役立ちます。その結果、エンドユーザーは最新のソフトウェアアップグレードをより迅速に、より少ないバグで受け取ることができます。
このガイドでは、Jenkinsの使用に関する詳細で実用的な紹介を提供します。
前提条件
- Jenkinsがインストールされました。
- Webブラウザへのアクセス。
- administrator / sudoを使用したコマンドプロンプト/ターミナルへのアクセス 特権。
Jenkinsとは何ですか?
Jenkinsは、1つの統合プラットフォームで事前に構築されたパッケージとして、さまざまな統合、テスト、および展開テクノロジーを網羅するサーバーです。 。 Javaで記述されたオープンソースツールとして 、Jenkinsは、開発者が日常的なタスクを自動化し、新しいビルドを可能な限り迅速に提供するのを支援します。
Jenkinsは、開発用の主要なパイプライン自動化サーバーであり、統合されたCI/CDツールです。セットアップは簡単で柔軟性があり、プラグインベースのシステムを介してソースコードと言語の幅広い組み合わせが可能です。
Jenkinsは何に使用されますか?
Jenkinsの主な機能はジョブです およびパイプライン 、これにより、次のことが可能になります:
- 継続的インテグレーション アプリケーションとInfrastructureasCode(IaC)のパイプライン。これは、構築とテストの自動化に役立ちます。
- 継続的デリバリー 自動配信ワークフローを介してパイプラインを作成し、ノンストップのコード展開を実現します。
- 自動化 バックアップ管理、サービス統計などの日常的なタスクのジョブとパイプライン。
初心者向けのJenkinsチュートリアル
次のセクションでは、Jenkinsのインストール後のセットアップと使用方法を紹介します。
続行する前に、Jenkinsサービスが実行されていることを確認してください。確認するには、Linuxターミナルで次のコマンドを実行します。
sudo systemctl status Jenkins
サービスはアクティブとしてリストされます 。
Windowsを使用している場合は、次のセクションに進んでください。
Jenkinsへのアクセス
ブラウザを開き、次のURLからプログラムにアクセスします。
localhost:8080
Jenkinsのロックを解除する 初回設定のページが表示されます。すでにJenkinsがインストールされている場合は、ログインページが読み込まれます。
ページが表示されない場合、ファイアウォールはポートをブロックしているか、使用できません。ファイアウォールの設定を確認し、デフォルトのポート(8080)でトラフィックを許可するか、Jenkinsのポートを変更してください。
Linuxで、デフォルトのUFWファイアウォールのポート8080でトラフィックを有効にするには、次のコマンドを実行します。
sudo ufw enable
sudo ufw allow 8080
sudo ufw status
コマンドはファイアウォールを有効にし、Jenkinsのデフォルトポートを通過するトラフィックを許可するようにルールを変更します。
Jenkinsのロックを解除する
Jenkinsのロックを解除する このページでは、インストールを続行するために管理者パスワードが必要です。 Linuxでこのパスワードを取得するには、ターミナルで次のコマンドを実行します。
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
Windowsの場合、初期管理者パスワードファイルは Unlock Jenkinsによって表示される場所にあります ページ。フォルダが非表示になっている場合は、非表示のアイテムの表示を有効にします。
文字シーケンスをコピーして管理者パスワードに貼り付けます フィールドに移動し、続行をクリックします 。
ジェンキンス管理
Jenkins管理ページに入るには、Jenkinsの管理をクリックします 左側のメニューにあります。
管理オプションは、機能に基づいてセクションに分かれています。
システム構成
- システムの構成 Jenkinsのパスとグローバルオプションを管理します。
- グローバルツール構成 ツール、その場所、および自動インストーラーを管理します。
- プラグインの管理 ページは、既存のプラグインのインストール、削除、無効化など、プラグイン制御の主要なオプションです。
- ノードとクラウドの管理 Jenkinsのノードとクラウドを管理するための中心的な場所です。
セキュリティ
- グローバルセキュリティの構成 ここで、認証、承認、SSHサーバーオプションなどの一般的なセキュリティ管理が行われます。
- 資格情報の管理 認証が必要なプラグインとアプリのクレデンシャルの概要を説明します。
- 資格情報プロバイダーの構成 特定の資格情報プロバイダーを除外および制限できます。
- ユーザーの管理 Jenkinsにアクセスできるユーザーを一覧表示します。
- 処理中のスクリプトの承認 システム管理者が使用前に概要を確認して承認する必要があるスクリプトを管理するのに役立ちます。
ステータス情報
- システム情報 プログラム情報、環境変数、プラグインバージョン、メモリ使用量などの環境情報を表示します。このオプションを使用して、Jenkinsの問題のトラブルシューティングを行います。
- システムログ Jenkinsのログレコードを保持します。
- 負荷統計 は、リソースの使用と貴重なパフォーマンス指標を示しています。
- ジェンキンスについて プラグインのライセンスと依存関係の情報を表示します。
トラブルシューティング
- 古いデータの管理 ダウングレードまたはプラグインの削除によるデータストレージへの変更の管理に役立ちます。
ツールとアクション
- ディスクから構成をリロード 構成ファイルへのすべての変更を再ロードします。このオプションは、ディスクで変更が発生した場合に役立ちます。
- Jenkins CLI CLIからJenkinsを実行する方法と、コマンドのドキュメントを提供します。
- スクリプトコンソール は、スクリプトを実行し、Jenkinsから直接トラブルシューティングするための組み込みのGroovyスクリプトコンソールです。
- シャットダウンの準備 Jenkinsサーバーを安全にシャットダウンするためのインターフェースを開きます。
Jenkinsの構成
Jenkinsは多くのグローバル構成オプションを提供します。主な機能は、さまざまなプラグインのパスを設定することです。
Jenkins構成にアクセスするには:
1.ダッシュボード 、Jenkinsの管理を選択します 。
2.システムの構成を選択します 。
以下は、各フィールドの機能の説明です。
ホームディレクトリ
システムの構成の最初のフィールド ページはホームディレクトリです 。
パスは、Jenkinsがすべてのデータをファイルシステムに保存する場所です。
システムメッセージ
次のセクションは、システムメッセージを入力するためのテキストボックスを示しています。 。
メッセージはJenkinsのメインページに表示されます。
このメッセージは、ログイン時にすべてのユーザーに表示されます。メッセージを使用して、情報と通知を表示します。
ジェンキンスの場所
ジェンキンスの場所 セクションは2つのフィールドで構成されています:
1. Jenkins URL -URLはhttp://localhost:8080
です。 デフォルトでは。 Jenkinsは、ホスト名としてlocalhostを使用することに関する警告を表示します。ホスト名を数値アドレスに変更すると、警告が解決されます。
2.システム管理者の電子メールアドレス -Jenkinsからプロジェクト所有者への通知は、この電子メールから送信されます。許可される2つの電子メール形式は次のとおりです。
- [メール保護]
- 名前の名前<[メールで保護]>
グローバルプロパティ
グローバルプロパティ セクションには2つの主要なチェックボックスが含まれています:
1.環境変数 任意のジョブまたはパイプラインで使用可能なグローバル変数を定義できます。環境変数の詳細については、Jenkins環境変数のチュートリアルに従ってください。
2.ツールの場所 ツールの場所を手動で指定して、グローバル構成を上書きできます。
電子メール通知
電子メール通知 設定は、SMTP電子メールサーバーを構成するためのものです。 、デフォルトのユーザーの電子メールサフィックスに加えて すべてのユーザー向け。
たとえば、 @<company name>.com
を使用します ほとんどのユーザーがその形式の電子メールを持っている場合。ユーザーは必要に応じてサフィックスを上書きできます。
プラグインの管理
プラグインの管理に移動します Jenkinsの管理から Jenkinsプラグインを処理するページ。プラグインのメンテナンスには、プラグインのインストール、アンインストール、更新が含まれます。
プラグインをインストールする
Jenkinsプラグインをインストールするには、以下の手順に従ってください:
1.プラグインの管理 ページで、利用可能をクリックします タブ。
2.リストには、使用可能なすべてのプラグインが表示されます。検索バーでプラグインを検索します。
プラグインが表示されない場合は、今すぐ確認をクリックしてください 情報を更新します。
3.プラグイン名の横にあるチェックボックスをクリックし、再起動せずにインストールを選択します 。
4.ページにインストールの進行状況が表示されます。プラグインがインストールされたら、Jenkinsの再起動をクリックします チェックボックスをオンにすると、Jenkinsが自動的に再起動します。
インストールがバックグラウンドで実行されている間、Jenkinsで通常どおり作業を続けます。完了すると、Jenkinsが再起動し、ログインページが表示されます。
プラグインのアンインストール
Jenkinsからプラグインをアンインストールするには、以下の手順に従ってください:
1.プラグインの管理 ページで、インストール済みをクリックします タブ。
2.検索ボックスにプラグインの名前を入力して、情報をフィルタリングします。
3.アンインストールをクリックします 最後の列のボタン。
4.アンインストールの確認を求める警告ページが表示されます。
はいをクリックします プラグインを削除します。
5.Jenkinsを再起動してアンインストールを完了します。
プラグインを更新する
プラグインの更新が利用可能になると、Jenkinsの管理から通知が表示されます ページ。
プラグインの更新は、依存関係があるためオプションです。プラグインを更新するには、次の手順を実行します。
1.プラグインの管理 ページでは、利用可能なアップデートのリストがアップデートに表示されます タブ。
2.ページの下部には、すばやく選択するためのオプションがあります。 すべてを選択します すべてのプラグインまたは互換性を更新します 互換性のある依存関係を持つものだけを更新します。
または、プラグインを名前で検索し、チェックボックスをクリックして特定のプラグインを更新します。
3.再起動後にダウンロードしてインストールをクリックします 。
4.アップデートは自動的にダウンロードされます。
完了したら、Jenkinsを再起動すると、更新がすぐにアクティブになります。
Gitのセットアップ
GitはJenkinsのプラグインとして提供されます。 推奨プラグインのインストールを選択すると、Gitプラグインがインストールされます インストールプロセス中のオプション。
プラグインがまだ利用できない場合は、以下の手順に従ってください。
ステップ1:Gitプラグインをインストールする
すでにGitプラグインをお持ちの場合は、次のセクションに進んでください。それ以外の場合、Gitプラグインをインストールするには、次の手順を実行します。
1.ダッシュボード ページで、Jenkinsの管理をクリックします 。
2.プラグインの管理を選択します 。
3.利用可能を選択します タブ。
4. Gitを検索します 検索バーでEnterを押します 。
5.プラグインの横にあるチェックボックスをオンにして、再起動せずにインストールをクリックします 。
6.プラグインがインストールされたら、Jenkinsを再起動して、次の手順に進みます。
ステップ2:Gitパスを設定する
Gitプラグインを設定するには、以下の手順に従います。
1.Jenkinsのダッシュボード ページで、Jenkinsの管理をクリックします 。
2.グローバルツール構成を選択します 。
3. Gitまで下にスクロールします セクション。
4.Git実行可能ファイルへのパスを変更します マシン上のパスに。 Linuxでパスを確認するには、ターミナルで次のコマンドを実行します。
whereis git
Windowsでは、コマンドプロンプトで次のコマンドを実行して、パスを取得します。
where git.exe
パスをフィールドに貼り付けて、[保存]をクリックします 。
Gitはインストール後に正しくリンクするようになり、プロジェクトの作成時に利用できるようになりました。
Tomcatのセットアップ
TomcatでのJenkinsのセットアップは簡単です。セットアップでは、Tomcatが以前にインストールおよび構成されていることを前提としています。
以下の手順に従って、TomcatでJenkinsをセットアップします。
1. jenkins.warを取得します ファイル。 Linuxの場合、次のコマンドを実行してファイルを取得します。
wget https://get.jenkins.io/war-stable/latest/jenkins.war
Windowsを使用している場合は、 jenkins.warをダウンロードしてください。 ダウンロードページからのファイル。
2.ファイルをTomcatのwebappsに移動します JenkinsをTomcatに直接デプロイするディレクトリ。 Windowsでは、GUIを使用してこれを実行します。 Linuxでは、次のコマンドを実行します。
sudo mv jenkins.war /opt/tomcat/webapps/jenkins.war
ファイルを移動すると、Jenkinsディレクトリが生成されます。
3.最後に、次のリンクをたどって、ブラウザからJenkinsにアクセスします。
http://localhost:8080/jenkins
インストール手順に従って、Jenkinsのセットアップを続行します。
Mavenのセットアップ
MavenをJenkinsと統合すると、Jenkinsインターフェースを介してMavenコマンドを使用できるようになります。以下の手順に従って、JenkinsでMavenをセットアップします。
ステップ1:Mavenプラグインをインストールする
Maven統合プラグインをインストールするには:
1.ダッシュボードから 、Jenkinsの管理を選択します 。
2.プラグインの管理を選択します 。
3.利用可能を選択します タブ。
4.Maven統合を検索します プラグイン。
5.チェックボックスをクリックして、再起動せずにインストールを選択します 。
6.インストール後にJenkinsを再起動するを選択します チェックボックス。インストールが完了すると、Jenkinsは自動的に再起動します。
次の手順に進んで、ローカルマシンから必要な依存関係を追加します。
ステップ2:JDKパスを設定する
パスを設定して、ローカルJDKインストールを接続します。
1.ダッシュボードで、Jenkinsの管理を開きます 。
2.グローバルツール構成に移動します 。
3. JDKを見つけます セクションをクリックし、JDKの追加をクリックします 。
4.わかりやすい名前を設定し、JDKパスを追加します。 Linuxでパスを見つけるには、次のコマンドを実行します。
update-alternatives --list java
/ bin / javaの親パスをコピーします ジェンキンスに追加します。
5.自動インストールのチェックを外します ボックス。
次のステップに進み、Mavenパスを設定します。
ステップ3:Mavenパスを設定する
[グローバルツールの構成]ページからセットアップを続行します。
1. Mavenを見つけます セクションをクリックし、Mavenを追加をクリックします 。
2.ローカルマシンにわかりやすい名前とMavenパスを設定します。
3.自動インストールのチェックを外します ボックス。
4.保存をクリックします 変更を保存します。
ビルドジョブの設定
以下は、Jenkinsで簡単なGitHubビルドジョブを作成するための例です。
1.ダッシュボード 、新しいアイテムをクリックします 。
2.プロジェクト名を設定します。
3. Freestyle Projectを選択し、 OKをクリックします 。
プロジェクトによって、この時点以降の手順は異なります。以下に示す例は、GitHubプロジェクトを作成します。ただし、他の構成と可能性があります。
1.GitHubプロジェクトにチェックマークを付けます チェックボックス。
2.ブランチ情報なしでホストされているプロジェクトのURLを提供します。例:
https://github.com/phoenixNAP-KB/test
3.ソースコード管理まで下にスクロールします セクションを選択し、 Gitを選択します 。
4.リポジトリのURLを追加します。手順2と同じURLを使用して、 .gitを追加します 最後に。例:
https://github.com/phoenixNAP-KB/test.git
5.構築するブランチで セクションで、ブランチ名を変更します master プロジェクト内の実際のブランチ名に変更します。
6.保存をクリックします セットアップを完了します。
7.今すぐ作成をクリックします 左側のメニューでプロジェクトをビルドします。
ビルドステータスはビルド履歴の下に表示されます 。
ビルドはすぐに完了します。成功したジョブには、緑色のチェックマークとビルド時間が表示されます。
Jenkins分散ビルド
Jenkinsには、分散ビルドを実行するオプションがあります。さまざまなノードにタスクを分散することで、バランスの取れた設定を提供し、中央マシンの負荷を軽減できます。
さらに、分散ビルドは、各環境を専用ノードに割り当てることで、複数の場所でコードをテストするときに役立ちます。
ノードの作成と構成
Jenkinsでノードを作成するには、次の手順を実行します。
1.ダッシュボード ページで、Jenkinsの管理を開きます 。
2.ノードとクラウドの管理をクリックします 。
3.新しいノードをクリックします 左側のペインで。
4.ノードに名前を付けて、パーマネントエージェントを選択します オプション。
OKをクリックします 続行します。
5.ノードを構成します。次の情報を提供します:
- ノードのリモートルートディレクトリ。
- 起動方法。
6.ノードを保存します。起動方法に応じて、ノードは次のいずれかになります。
- 単独で開始します。
- 追加の手順が適用され、ノード名をクリックしてノードページから表示できます。
Jenkinsのデプロイ
Jenkinsは、プロジェクト展開のための多数のオプションを提供します。デプロイメントを操作する前に、ユースケース用のプラグインをインストールしてください。利用可能なオプションのいくつかは次のとおりです。
- Dockerパイプライン Dockerコンテナを構築して使用します。
- Ansible プラグインはコマンドとプレイブックを呼び出します。
- Kubernetes プラグインにより、クラスターの継続的な展開が可能になります。
- プラグインへのコンテナのデプロイ Tomcatなどのサーバーでのリモート戦争展開を可能にします。
プラグインの管理で利用可能なプラグインを検索します より包括的なリストについては、ページをご覧ください。
Jenkinsテスト
Jenkinsは、CI/CDパイプライン用の多数のテスト自動化ツールを提供しています。テストプラグインは、テストスイートを実行し、ユニット、自動、およびリモートテストを実行するのに役立ちます。
スイートはパイプラインに直接統合され、以下を提供します:
- 要約された結果 HTMLWebページとして。
- 歴史的概要 以前のビルドからの傾向を追跡するため。
- 詳細な障害ログ とテスト結果の要約。
テストツールは、ビルド後のステップとしてパイプラインに統合されます。
ビルドのメトリックの管理
メトリックは、時間の経過に伴うビルドのメトリックを表示するのに役立ちます。例を確認するには、以下の手順に従って、すべてのプラグインのビルド履歴メトリックをインストールしてください。
1.Jenkinsの管理に移動します ページ。
2.プラグインの管理を選択します 。
3.利用可能なプラグイン タブで、ビルド履歴メトリックを検索します 。
4.ボックスをクリックしてから、再起動せずにインストールします。 。
5.インストール後に再起動を確認します オプション。
インストールが完了すると、Jenkinsは自動的に再起動します。
6.ビルドページに移動します。
表には、ビルドについて計算された次のメトリックが表示されます。
- 平均修復時間(MTTR)
- 平均故障間隔(MTTF)
- ビルド時間の標準偏差
さまざまなメトリックとグラフィック表示のために、他のプラグインが利用可能です。
Jenkinsセキュリティ
Jenkinsのセキュリティは多くの側面で構成されています。重要な部分の1つは、ユーザーを作成し、関連する権限を付与することです。たとえば、ジョブの作成やその他の管理タスクは、システム管理者だけが利用できるようにする必要があります。
Jenkinsでユーザーを作成および管理するには、以下の手順に従ってください。
ステップ1:Jenkinsユーザーを作成する
Jenkinsユーザーを設定するには、次の手順を実行します。
1. Jenkinsの管理で ページで、[ユーザーの管理]をクリックします 。
2.ユーザーの作成をクリックします 左側のペインにあります。
3.フォームのフィールドに入力し、[ユーザーの作成]をクリックします 。
新しいユーザーがユーザーリストに表示されます。
ステップ2:承認を管理する
ユーザーの承認を管理するには:
1. Jenkinsの管理から ページで、グローバルセキュリティの構成をクリックします 。
2.承認の下 セクションで、マトリックスベースのセキュリティを選択します 。
デフォルトでは、匿名の2つのユーザーグループが表示されます。 および認証されたユーザー 。
3.特定のユーザーを追加するには、[ユーザーの追加]をクリックします 。
4.プロンプトがポップアップします。ユーザー名を入力して[OK]をクリックします 。
5.チェックボックスをクリックして、ユーザーの権限を選択します。
変更を保存してルールを適用します。