✅ Jenkinsの基本
-
JenkinsはDevOpsツールの中でも特に有名なもの。
-
CI/CD(継続的インテグレーション / 継続的デリバリー)を自動化するためのツール。
-
Jenkinsを使うと、ソフトウェアのビルド(構築)やデプロイ(配置)が自動で行える。
-
世界中で使われていて、1400以上のプラグインがある → 機能を拡張できる。
-
オープンソース(無料で使える)も魅力。
-
DevOpsをやりたいなら、必ず知っておきたいツール。
🌟 Jenkinsで学ぶCI/CDの基本
🔄 CI(継続的インテグレーション)とは?
🎯 目的
-
開発者がコードを変更・追加したら自動で「ビルド」と「テスト」する。
-
問題が早く見つかり、早く直せるようになる。
🪛 流れ(例:Javaアプリの場合)
-
開発者がコードを変更してGitHubなどにアップロード(コミット)
-
Jenkinsが自動でその変更を検知
-
Jenkinsが「ビルドツール」(例:MavenやGradle)を使ってjarファイルなどを生成
-
そのjarファイルを自動テストにかける
🔁 → テストが失敗したら、開発者が再度修正してアップする
→ Jenkinsがまた検知してビルド&テストをやり直す
📌 つまり:「コードを直してアップ → 自動で確認 → 問題があればすぐ分かる」という仕組み。
🚀 CD(継続的デリバリー)とは?
🎯 目的
-
テストが通ったアプリを自動で「配布(デプロイ)」すること。
🪛 流れ(例)
-
CIでビルド & テストが終わる
-
Jenkinsが次に:
-
Dockerイメージを作成
-
イメージをDocker HubやECRなどの「リポジトリ」にアップロード
-
Kubernetesの設定ファイルなどを使ってアプリをデプロイ
-
✅ これもすべて 自動化可能。
📌 Jenkinsが「テスト成功 → Docker作成 → 配布」まで全部やってくれる!
🧠 どうしてJenkins + CI/CDが人気なのか?
-
⏱ 開発スピードが速くなる
-
テストやデプロイを待つ時間がなくなる
-
-
🙅♂️ 「自分のPCでは動いたのに...」がなくなる
-
同じ環境で自動実行されるから、バグが見つかりやすい
-
-
🔄 自動化されてるので、手作業が減ってミスも減る
🔧 JenkinsってCI/CD以外の使い方
使い方例 | 説明 |
---|---|
📦 アプリのビルド自動化 | Jenkinsでアプリを毎日自動ビルド |
🚀 リリースの自動配布 | Jenkinsで定期的にリリース |
🧹 クリーンアップの自動実行 | Jenkinsで古いログやファイルを削除 |
🔁 定期的なバックアップなどのスケジューリング | cronのように自動化できる |