
本コースの対象者、受講後の姿、受講の前提条件について学びます。また、ハンズオンのトラブルシューティングの参考情報として、本コース収録環境についてお伝えします。
本コースの内容の概要を学びます。
CI/CD、CI/CDパイプラインとは何か、CI/CDパイプラインの処理フローについて学びます。
Continuous Integration / Continuous Delivery/Deploymentの各用語の違いと用途について学びます。
Jenkinsの歴史、特徴、ジョブ実行の流れについて学びます。
JenkinsGUI、Jenkinsfile(コード)(Pipeline as Codeと呼ばれます)、それぞれの作成方法の違い等について学びます。
実施概要、事前準備が必要なものについて学びます。
Jenkinsインストールを行うための、EC2インスタンス(Linux)を作成します。
EC2インスタンスにJenkinsをインストールし、エージェント監視の初期設定変更を行います。Built-in nodeと呼ばれるエージェントの概要についても合わせて補足します。
JenkinsGUIの画面構成の概要について学びます。
JenkinsGUIによるパイプライン構築を学ぶため、初めの一歩として単発のフリースタイルジョブを作成、実行します。Jenkinsのディレクトリの重要な概念であるHome directory/Workspaceについても合わせて学びます。
JenkinsGUIによるパイプライン構築を学ぶため、複数のフリースタイルジョブを作成、連動実行します。Jenkinsのジョブ実行結果の見方(Statusアイコン、Weatherアイコン)についても合わせて学びます。
JenkinsGUIを利用するユーザー追加手順や、ロール(開発者/テスター)に応じた権限制御方法(Role-based Authorization Strategy)について学びます。
Jenkinsfile(コード)によるパイプライン構築を学ぶため、初めの一歩としてJenkinsfileをJenkinsGUI上で手入力して定義し、パイプラインを実行する方法について学びます。また、Jenkinsfileの宣言型とスクリプト型の記述方法の違い、宣言型Jenkinsfileの基本構成や、Jenkinsfile記述の際に参照するOnline Documentationのパスについても合わせて学びます。
Jenkinsfile(コード)によるパイプライン構築を学ぶため、JenkinsfileをGitHubに登録し、Jenkinsから取得、パイプラインを実行する方法について学びます。
Jenkinsfile(コード)によるパイプライン構築を学ぶため、GitHubプラグインを使用し、GitHubへのコミットをトリガーにパイプラインを実行する方法について学びます。
Jenkinsfile(コード)によるパイプライン構築を学ぶため、テスト環境用のS3バケットを作成し、AWSプラグインを使用することで、パイプラインを通じて該当バケットにWebページをデプロイする方法について学びます。また、JenkinsfileのStep記述の際に参照するSteps Referenceのパスや見方についても合わせて学びます。
Jenkinsfile(コード)によるパイプライン構築を学ぶため、テスト環境用のS3バケットにデプロイ済みのWebページに対し、パイプラインを通じて検証作業を実施する方法について学びます。また、パイプライン実行(成功ケース)、パイプライン実行(失敗ケース)の両者の挙動の違いを確認し、エラー発生時のパイプラインの挙動について学びます。さらに補足として、JenkinsfileのStepを一部自動生成してくれるツールSnippet Generatorの使い方について学びます。
Jenkinsfile(コード)によるパイプライン構築を学ぶため、前ステージでテストOKとなったWebページを、作成済みの本番環境用のS3バケットにデプロイする方法について学びます。
Stage Viewプラグインを使用し、パイプラインの実行結果ビューをカスタマイズし、実行結果をより見やすくする方法を学びます。
JenkinsCLIを使用し、コマンドでJenkinsを操作する方法について学びます。一例として、コマンド経由でパイプラインを実行する方法、またコマンドのオプションの使用方法について学びます。
作成したAWSリソースの削除方法を学びます。
<コースの概要>
本コースは前半の理論編で、CI/CDパイプラインとは(CI/CD、CI/CDパイプラインとは何か、CI/CDパイプラインの処理フロー)、Continuous Integration / Continuous Delivery/Deploymentの違い、Jenkinsとは(Jenkinsの歴史、特徴、ジョブ実行の流れ)、ジョブの種類(フリースタイル/パイプライン)※JenkinsGUI、Jenkinsfile(コード)(Pipeline as Codeと呼ばれる)の作成方法の違い等、ハンズオンの流れ(実施概要、事前準備が必要なもの)を学んだ後、後半の実践編でAWS上の環境を使用して数多くのハンズオンを実施することで、より理解が深まる構成となっております。
ハンズオンでは以下の内容を取り扱い、Jenkins(on Amazon EC2)とGitHub、Amazon S3連携による、Webページのテスト、デプロイを通じて、CI/CDパイプラインの仕組みを実践的に学ぶことができます。
[ハンズオン実施内容]
・Jenkinsインストール(on Amazon EC2(Linux))
・JenkinsGUI構成確認
・JenkinsによるCI/CDパイプライン構築
JenkinsGUIによるパイプライン構築、
Jenkinsfile(コード)によるパイプライン構築(Reference見方、Generator使い方込)
・プラグインによる、Jenkinsと他サービス連携
GitHubプラグインによる、JenkinsとGitHub連携(ソースコード管理システム連携)、
AWSプラグインによる、JenkinsとAmazon S3連携(クラウドサービス連携)
・JenkinsGUIの認証・認可制御確認
ユーザー追加、ロール(開発者/テスター)に応じた権限制御
・その他便利機能の使い方確認
Stage ViewプラグインによるJenkinsGUIの実行結果ビューカスタマイズ、
JenkinsCLIの使い方
<他教材との違い>
本コースと他教材(書籍やYoutube動画教材等)との違いは以下の通りです。
・1本完結型コースであるためご自身でネット検索やマニュアル確認等を行う手間がかからない。
・CI/CDパイプライン、Jenkinsとは何か、なぜその手順で設定するのか等、解説する技術や手順一つとってもその理由や背景を詳細に説明しているため途中で止まらずに受講できる。
・全レクチャー動画ダウンロード可能なため、場所を問わずどこからでも受講できる。
・各ハンズオンに完成版のJenkinsfileや実行コマンド等を添付しているため、コーディングミスによる原因調査等、余計な手間がかからない。
<コース受講後の姿>
本コース受講後には以下のスキルを自然と身に付けることができます。
・CI/CDパイプラインとは何か、について自分の言葉で説明できるようになる
・JenkinsによるCI/CDパイプライン構築の概要理解
・JenkinsGUIによるパイプライン構築
・Jenkinsfile(コード)によるパイプライン構築
・プラグインによる、Jenkinsと他サービス連携の概要理解
・GitHubプラグインによる、JenkinsとGitHub連携(ソースコード管理システム連携)
・AWSプラグインによる、JenkinsとAmazon S3連携(クラウドサービス連携)
・JenkinsGUIの認証・認可制御の概要理解
・ユーザー追加、ロール(開発者/テスター)に応じた権限制御
・その他便利機能の使い方が身に付く
・Stage ViewプラグインによるJenkinsGUIの実行結果ビューカスタマイズ
・JenkinsCLIの使い方
<コースの内容>
本コースの内容は以下の通りです。
コース概要
本コース受講にあたって
自己紹介
本コースのねらい
本コースの内容
CI/CDパイプライン・Jenkins概要(理論編)
CI/CDパイプラインとは
ContinuousIntegration / ContinuousDelivery/Deploymentの違い
Jenkinsとは
ジョブの種類(フリースタイル/パイプライン)
ハンズオンの流れ
Jenkinsハンズオン(実践編)
準備1-EC2インスタンス作成-
準備2-Jenkinsインストール-
準備3-JenkinsGUI構成確認-
本編1-ジョブ作成(フリースタイル)_単発ジョブ編-
本編2-ジョブ作成(フリースタイル)_連動ジョブ編-
本編3-JenkinsGUI認証・認可制御-
本編4-ジョブ作成(パイプライン)_Jenkinsfile 手入力編-
本編5-ジョブ作成(パイプライン)_Jenkinsfile GitHub取得編-
本編6-ジョブ作成(パイプライン)-GitHubトリガー起動編-
本編7-ジョブ作成(パイプライン)-テスト環境デプロイステージ実装編-
本編8-ジョブ作成(パイプライン)-テストステージ実装編-
本編9-ジョブ作成(パイプライン)-本番環境デプロイステージ実装編-
付録1-ビューカスタマイズ(Stage Viewプラグイン)-
付録2-JenkinsCLI-
後片付け-AWSリソース削除-
ボーナスレクチャー
ボーナスレクチャー