本田 顕本田 顕 / 2023年5月16日

Jenkins使ってみた

UX / UI のデザインに強いWebシステムの開発と、BtoB Webマーケを支援するWeb制作を提供するN’s Creates (エヌズクリエイツ) 株式会社のエンジニアの本田です。

私は案件でPLをいくつか担当しているので、工数管理も少々経験しているのですが、
顧客の要望に応え、開発を進める上で、これは少しエネルギーが必要だなと感じる作業が、
リリース管理です。今回はそんなリリース管理の負担を少しでも和らげるべく、
CI/CDツールについて、中でもその代表格であるJenkinsについて紹介したいと思います。

 

Jenkinsとは

Jenkinsは、「ソフトウェアのリリーススピードの向上」、「開発プロセスの自動化」、「開発コストの削減」
といった目的を実現するためのオープンソースのツールです。
Linux Foundationsによって管理されています。
170万ユーザー以上の導入実績があり、世界中のエンジニアによって開発された
1,800以上ものプラグインが利用可能なことが特徴です。

 

CI/CDツールとは

Jenkinsの説明について触れましたがそもそも、CI/CDツールとはなんでしょうか。
厳密にはCIツールとCDツールは異なる概念です。

CIとは継続的インテグレーション(Continuous Integration)の略で、
開発プロセスの中で加えた変更の度のビルド実行、テスト、ソースのマージ、フィードバックといった
一連の開発作業のつながりのことを指します。

CDとは継続的デリバリー(Continuous Delivery)の略で、
上記の開発プロセス + リリース作業までを含みます。

CIツールでは、コードレベルのテストまでを自動化する一方、
CDツールでは、実行環境の調整やリリースを含んだ作業の自動化を行います。

 

使ってみた

それでは、実際にJenkinsを使ってみましょう。

今回は皆さんお馴染みのAmazon Linux環境を利用します。
まず、Jenkinsアクセス用の8080ポートと、SSH接続用の22ポートを設定します。

 

次にLinux環境にログインします。

 

JDKとJenkins本体をインストールします。

sudo wget -O /etc/yum.repos.d/jenkins.repo \
https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm –import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
sudo yum upgrade
sudo dnf install java-11-amazon-corretto
sudo yum install jenkins

※この時気をつけなければいけないのが、AWS環境の場合通常のJDKではなくAmazon Correttoを利用する必要があります。

こちらのメッセージが表示されればインストール成功です。

 

jenkins.serviceの有効化、起動を行います。

sudo systemctl enable jenkins
sudo systemctl start jenkins

jenkins.serviceの状態を確認し、activeになっていれば成功です。

sudo systemctl status jenkins

 

ここまで完了すれば、URLを開きます。http://<ドメイン>:8080
すると初期パスワードの入力を求められます。

 

Linux上から初期パスワードのフォルダをviewし、入力すると
Admin Userの作成画面に進みます。

 

その次に、パッケージのインストールを進めます。
通常は推奨のパッケージ群をインストールすることになります。
(Install suggested pluginsを選択)

 

最後にルートの設定を行います。

 

[Start using Jenkins]をクリックすると、ついにダッシュボードのお目見えです。
左上にお馴染みのおじさんが出ていますね。
こちらの画面から開発プロセスの管理を行なっていくことができます。

 

 

まとめ

今回は、Jenkinsについて紹介してみました。
CI/CDツールの代名詞とも言えるサービスなので皆さんも一度は手に触れてみてはいかがでしょうか。
では!

同じテーマの記事

山本 明子山本 明子 / 2024年7月11日

体験型脱出ゲームで体感したデザイン設計

高橋 実玖高橋 実玖 / 2024年6月14日

アイスブレイクに最適!Good & New(グッド アンド ニュー)を実施してみた

山本 明子山本 明子 / 2024年5月17日

「LINE」について調べてみた

本田 顕本田 顕 / 2024年5月14日

Android Studio Jellyfishのバグについて

お問い合わせ

BtoBサービスのデザイン・開発に関することならお気軽にご相談ください

一緒に働く仲間を募集しています

採用情報

デザイナー、エンジニア共に募集をしています。

パートナー募集

現在は主に開発領域に対して募集しています。