Jenkinsは、オープンソースの継続的ビルドシステムです。これはJavaで記述されたサーバーベースのアプリケーションであり、通常、WindowsまたはUnixマシンでバックグラウンドサービスとして実行されます。 Jenkinsを使用して、ソースコードの変更についてリポジトリを自動的に監視します。誰かが自分の変更を中央のソースコードリポジトリにプッシュするとすぐに、Jenkinsは新しいソースファイルの変更を分析します。前回のコンパイル以降にソースファイルが変更されていることが判明した場合、Jenkinsは継続的インテグレーションサーバーで新しいビルドを開始します。
Jenkinsは、2つの重要なタスクで実質的に私たちを助けてくれます:
- すべての開発者がプロジェクトのソースの最新バージョンで作業していることを確認します
- ビルドまたはデプロイ中に問題が発生した場合に、すべての人に警告します。
Jenkinsは、BitBucket、Git、CVS、Mercurial、Perforceなどのさまざまなコード管理(SCM)DevOpsツールをサポートしています。Jenkinsを使用してソースコードリポジトリの変更をポーリングすることで、すべての開発者が最新のコピーを確実に入手できるようになります。プロジェクトのソースであり、これらの新しい変更に取り組んでいます。
たとえば、開発者Aは、プロジェクトのメインソース管理システムから新しいバージョンをチェックアウトし、いくつかのファイルに変更を加えたら、他の開発者が使用できるようにローカルコミットをプッシュする場合があります。開発者Bは、この頃同じファイルを編集していた可能性があり、その後、開発者Bも変更を中央のコードリポジトリにプッシュします。突然、開発者Aがプロジェクトのローカルコピーをチェックアウトしようとすると、中央コードリポジトリで利用可能な新しい変更があることが通知されます。これにより、他の開発者から中途半端な変更や古い変更を取得したり、時々自分の編集内容を失ったりする必要がなくなります。
このガイドでは、RockyLinux8マシンにJenkinsサーバーをインストールして構成するプロセスについて説明します。このガイドは、他のRedHatLinuxおよびSUSELinuxOSにも適用できます。
前提条件
- Rocky Linux 8が新規インストールされ、RAMが1GB以上のサーバー。 Jenkinsが作成するDockerコンテナごとに10GBの空き容量。
- sudo権限を持つroot以外のユーザー。
- このガイドは、サーバーが直接接続またはアップストリームルーター/プロキシを介してインターネットにアクセスできることを前提としています。
ステップ1:システムの更新
最初に行う必要があるのは、システムを更新することです。マシン上の既存のパッケージをすべて更新して、きれいな状態にすることが重要です。
sudo dnf update
または
sudo yum update
変更が正しく適用されるように、カーネルなどの重要なシステムパッケージをアップグレードした場合は、システムを再起動することをお勧めします。
sudo reboot now
同じroot以外のユーザーを使用して再度ログインし、次の手順に進みます。
ステップ2:Javaのインストール
Jenkinsを実行するにはJavaDevelopmentKit(JDK)が必要なので、それをインストールする必要があります。 JDKは、ほとんどのLinuxディストリビューションのパッケージであり、Javaランタイム環境(JRE)と、Javaプログラミング言語で記述されたアプリケーションおよびライブラリを実行/開発するためのその他のツールが含まれています。
JDK11とJDK8はどちらも、Rocky Linux 8の公式リポジトリで使用できます。以下のコマンドを入力して、システムで使用できるJDKバージョンを確認できます。
sudo dnf search java-*-openjdk
次のような出力が表示されます。
JenkinsはJDK11とJDK8の両方で実行できますが、一部の古いJenkinsプラグインはJDK11と互換性がない可能性があります。JDK8を使用することをお勧めします。この手順では、次のコマンドを使用してJDK8をインストールします。
sudo dnf install java-1.8.0-openjdk -y
Javaをインストールしたら、バージョンを確認することで、ソフトウェアが正しくインストールされたことを確認できます。
java -version
次のような出力が表示されます。
ステップ3:Jenkinsリポジトリを追加する
Jenkinsパッケージは、Rocky Linux 8の公式リポジトリには含まれていません。システムからパッケージをダウンロードしてインストールするには、システムのJenkinsリポジトリを追加する必要があります。 Jenkinsチームが提供する公式のJenkinsリポジトリを使用します。
sudo dnf install wget -y
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
次に、rpmコマンドを使用してリポジトリのGPGキーを追加します。
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
次のコマンドを使用して、リポジトリが正常に追加されたかどうかを確認しましょう。
sudo dnf repolist
すべてが正常に行われた場合は、次のような出力が表示されます。
ステップ4:Jenkinsサーバーのインストール
Jenkinsサーバーをインストールする前に、次のコマンドを使用してリポジトリを更新します。
sudo dnf update -y
これで、次のコマンドを入力してJenkinsサーバーをインストールできます。
sudo dnf install jenkins -y
上記のコマンドを入力した後、画面にエラーや特定のメッセージが表示されない場合は、Jenkinsのインストールが成功したことを意味します。すべてが正常にインストールされているかどうかを確認するには、次のコマンドを実行します。
sudo systemctl status jenkins
このコマンドの出力は次のようになります。
jenkinsサービスが実行されていない場合は、次のコマンドを入力して開始できます。
sudo systemctl start jenkins
システムを再起動するたびにjenkinsサービスが自動的に起動するようにするには、次のように入力します。
sudo systemctl enable jenkins
ステップ5:ファイアウォールの構成
ファイアウォールの背後にあるサーバーにJenkinsをインストールする場合は、Jenkinsにアクセスできるように、ファイアウォールとホストマシンの両方でいくつかのポートを開く必要があります。
Jenkinsはデフォルトでポート8080をリモートアクセスに使用するため、このポートを開いて外部接続を許可することをお勧めします。
sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
ファイアウォールをリロードして、行った変更を適用します。
sudo firewall-cmd --reload
成功した場合は、ファイアウォールの外部ゾーンでポート8080が開いている必要があります。以下のコマンドを実行して確認できます。
sudo firewall-cmd --list-all
このような出力が得られるはずです。
ステップ6:Jenkinsサーバーのセットアップ
Webブラウザーを開き、ポート8080のサーバーIPアドレスを入力して、Jenkinsにアクセスします。
http://server_IP_address:8080
ここで、server_IP_addressは、サーバーの実際のIPアドレスです。たとえば、192.168.1.5上のJenkinsサーバーにアクセスするには、http://192.168.1.5:8080と入力します。
Jenkinsの[はじめに]ページが表示され、初期管理者パスワードを取得する方法のヒントが表示されます。
これは、インストール中にJenkinsサーバーによって自動的に作成された(ただし表示されない)一時的なパスワードです。
端末に戻り、次のコマンドを実行してパスワードを取得します。
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
これにより、端末に管理者パスワードが出力されます。
このパスワードをコピーして、Jenkinsの[はじめに]ページの最初の管理者パスワードフィールドに貼り付けます。 続行をクリックします 右下にあります。
プラグインページに移動します。 推奨プラグインのインストールを選択します 、[インストール]をクリックします ページの下部にあります。
これにより、Jenkinsが正しく機能するために必要なプラグインの標準セットがインストールされます。
インストールが完了すると、最初の管理者ユーザーの作成に移動します。 ページ。最初の管理者ユーザーのユーザー名とパスワードを入力します。そして、保存して続行をクリックします 。
インスタンス構成が提供されます このページでは、JenkinsサーバーのルートURLを指定する必要があります。デフォルトのままにして、保存して終了をクリックします 。
最後に、Jenkinsの使用を開始をクリックします 最後のページにあります。
Jenkinsダッシュボードに移動し、最初のプロジェクトの構築を開始します。
これで、Jenkinsのインストールと構成が完了しました。
このチュートリアルでは、RockyLinux8システムにJenkinsをインストールする方法を学びました。これで、プロジェクト開発プロセスで継続的インテグレーションと継続的デリバリーのメリットを享受できます。ハッピーコーディング!
Jenkinsの詳細については、Jenkinsの公式ドキュメントを参照してください。
ご質問やご提案がございましたら、下にコメントを残してください。