序章

反復的な技術的タスクに直面した場合、機能する自動化ソリューションを見つけるのは面倒な作業になる可能性があります。 オープンソースの自動化サーバーであるJenkinsを使用すると、ソフトウェアの構築から展開までのタスクを効率的に管理できます。 JenkinsはJavaベースであり、Ubuntuパッケージからインストールするか、Webアプリケーションアーカイブ(WAR)ファイル(サーバー上で実行する完全なWebアプリケーションを構成するファイルのコレクション)をダウンロードして実行します。

このチュートリアルでは、Ubuntu 20.04にJenkinsをインストールし、開発サーバーを起動して管理ユーザーを作成し、Jenkinsで何ができるかを調べ始めます。 このチュートリアルの終わりに開発レベルのサーバーを使用できるようになりますが、このインストールを本番環境で保護するには、ガイド Ubuntu18.04でNginxリバースプロキシを使用してSSLでJenkinsを構成する方法に従ってください。 。

前提条件

このチュートリアルに従うには、次のものが必要です。

ステップ1—Jenkinsをインストールする

デフォルトのUbuntuパッケージに含まれているJenkinsのバージョンは、プロジェクト自体から入手可能な最新バージョンよりも遅れていることがよくあります。 最新の修正と機能を確実に入手するには、プロジェクトで管理されているパッケージを使用してJenkinsをインストールします。

まず、リポジトリキーをシステムに追加します。

  1. wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -

キーが追加されると、システムはOKで戻ります。

次に、Debianパッケージリポジトリアドレスをサーバーのsources.listに追加しましょう。

  1. sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

両方のコマンドを入力した後、updateを実行して、aptが新しいリポジトリを使用するようにします。

  1. sudo apt update

最後に、Jenkinsとその依存関係をインストールします。

  1. sudo apt install jenkins

Jenkinsとその依存関係が整ったので、Jenkinsサーバーを起動します。

ステップ2—Jenkinsを起動する

systemctlを使用してJenkinsを起動しましょう。

sudo systemctl start jenkins

systemctlはステータス出力を表示しないため、statusコマンドを使用して、Jenkinsが正常に起動したことを確認します。

  1. sudo systemctl status jenkins

すべてが順調に進んだ場合、ステータス出力の最初に、サービスがアクティブであり、起動時に開始するように構成されていることが示されます。

Output
● jenkins.service - LSB: Start Jenkins at boot time Loaded: loaded (/etc/init.d/jenkins; generated) Active: active (exited) since Fri 2020-06-05 21:21:46 UTC; 45s ago Docs: man:systemd-sysv-generator(8) Tasks: 0 (limit: 1137) CGroup: /system.slice/jenkins.service

Jenkinsが稼働しているので、ファイアウォールルールを調整して、Webブラウザからアクセスして初期設定を完了できるようにします。

ステップ3—ファイアウォールを開く

UFWファイアウォールを設定するには、 Ubuntu 20.04でのサーバーの初期設定、ステップ4-基本ファイアウォールの設定にアクセスしてください。 デフォルトでは、Jenkinsはポート8080で実行されます。 ufwを使用してそのポートを開きます。

  1. sudo ufw allow 8080

注:ファイアウォールが非アクティブの場合、次のコマンドでOpenSSHが許可され、ファイアウォールが有効になります。

  1. sudo ufw allow OpenSSH
  2. sudo ufw enable

ufwのステータスをチェックして、新しいルールを確認します。

  1. sudo ufw status

トラフィックはどこからでも8080を移植できることに気付くでしょう。

Output
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 8080 ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) 8080 (v6) ALLOW Anywhere (v6)

Jenkinsをインストールし、ファイアウォールを構成したら、インストール段階を完了してJenkinsのセットアップに飛び込むことができます。

ステップ4—Jenkinsを設定する

インストールを設定するには、サーバーのドメイン名またはIPアドレスhttp://your_server_ip_or_domain:8080を使用して、デフォルトのポート8080でJenkinsにアクセスします。

Unlock Jenkins 画面が表示されます。この画面には、初期パスワードの場所が表示されています。

Unlock Jenkins screen

ターミナルウィンドウで、catコマンドを使用してパスワードを表示します。

  1. sudo cat /var/lib/jenkins/secrets/initialAdminPassword

端末から32文字の英数字のパスワードをコピーして管理者パスワードフィールドに貼り付け、続行をクリックします。

次の画面には、提案されたプラグインをインストールするか、特定のプラグインを選択するオプションが表示されます。

Customize Jenkins Screen

推奨プラグインのインストールオプションをクリックすると、すぐにインストールプロセスが開始されます。

Jenkins Getting Started Install Plugins Screen

インストールが完了すると、最初の管理ユーザーを設定するように求められます。 この手順をスキップして、上記で使用した初期パスワードを使用してadminとして続行することは可能ですが、ユーザーを作成するために少し時間がかかります。

注:デフォルトのJenkinsサーバーは暗号化されていないため、このフォームで送信されたデータは保護されません。 Ubuntu 20.04でNginxリバースプロキシを使用してSSLでJenkinsを構成する方法を参照して、ユーザーの資格情報とWebインターフェイスを介して送信されるビルドに関する情報を保護してください。

Jenkins Create First Admin User Screen

ユーザーの名前とパスワードを入力します。

Jenkins Create User

Jenkinsインスタンスの優先URLを確認するように求めるインスタンス構成ページが表示されます。 サーバーのドメイン名またはサーバーのIPアドレスを確認します。

Jenkins Instance Configuration

適切な情報を確認したら、保存して終了をクリックします。 「Jenkinsの準備ができました!」を確認する確認ページが表示されます。

Jenkins is ready screen

Jenkinsの使用を開始をクリックして、メインのJenkinsダッシュボードにアクセスします。

Welcome to Jenkins Screen

この時点で、Jenkinsのインストールは正常に完了しています。

結論

このチュートリアルでは、プロジェクトが提供するパッケージを使用してJenkinsをインストールし、サーバーを起動し、ファイアウォールを開き、管理ユーザーを作成しました。 この時点で、Jenkinsの探索を開始できます。

探索が完了したら、ガイド Ubuntu 20.04でNginxリバースプロキシを使用してSSLでJenkinsを構成する方法に従って、パスワード、およびその間に送信される機密性の高いシステムや製品情報を保護します。 Jenkinsを引き続き使用するには、マシンとサーバーをプレーンテキストで表示します。

Jenkinsを使用して何ができるかについて詳しくは、このテーマに関する他のチュートリアルをご覧ください。