IT丸わかり 用語集 →

アプリ基盤編 第10章 / 全13章

CI/CD(自動テストと自動デプロイ)とは

Continuous Integration / Continuous Delivery

作る・確かめる・届けるを自動化
工場の自動ライン。部品を置けば、検査・組み立て・出荷までベルトコンベアが運んでくれる。検査で不良が見つかれば、その場でラインが止まる。
図とさわれるデモで確かめる →

ポイント

名前の由来

continuous途切れないintegration統合delivery配達

変更を途切れなく取り込み(CI)、途切れなく届ける(CD)。

仕事の現場では

「リリースは月1回、夜間に担当者が手作業で」という運用は、ミスと属人化の原因になりがちです。CI/CDを整えると、小さな修正を昼間に安全に出せるようになります。

くわしく(正確な話)

  • 変更を本体に取り込む前に、他の人に確認を頼む仕組みをプルリクエストと呼ぶ。
  • 本番の前に、本番そっくりの確認用の環境(ステージング)で試す。
  • 新しい版を一部の利用者にだけ先に出して様子を見るのがカナリアリリース、新旧2つの環境を切り替えるのがブルーグリーン。
  • サーバーやネットワークの構成もコードで書いて自動で作る考え方を IaC と呼ぶ。

この章の用語(意味と語源)

CI/CD シーアイ / シーディー

テストやリリースを自動化して、素早く何度も届ける仕組み。

覚えておく:push → テスト → ビルド → デプロイ

語源Continuous Integration(継続的な統合)/ Continuous Delivery(継続的な提供)の頭文字。

Git / GitHub ギット / ギットハブ

ソースコードの変更履歴を管理する仕組みと、それを共有するサービス。

GitHub Actions は、GitHub 上で CI/CD を動かす機能です。

語源git はイギリス英語の俗語で「ばか者」。作者リーナス・トーバルズの冗談の命名です。

プルリクエスト Pull Request

自分の変更を本体に取り込んでもらうよう、確認を頼む仕組み。

語源pull(引き込む)+ request(頼む)。

デプロイ Deploy

作ったアプリを、サーバーに配置して使える状態にすること。

語源もとは軍事用語で「部隊を配置する」。フランス語 déployer(広げる)から。

ステージング / 本番環境 Staging / Production

本番そっくりの確認用の環境/利用者が実際に使う環境。

語源stage(舞台)。本番前の舞台稽古の場所。

カナリアリリース / ブルーグリーン Canary Release / Blue-Green

新しい版を一部の人にだけ先に出す方法/新旧2つの環境を切り替える方法。

語源炭鉱でカナリアを先に入れて有毒ガスを察知したことから。ブルーとグリーンは2つの環境の呼び名です。

IaC(Infrastructure as Code) アイエーシー

サーバーやネットワークの構成をコードで書き、自動で作ること。

Terraform・Bicep・CloudFormation などが使われます。

語源Infrastructure as Code(コードとしての基盤)の頭文字。

アプリ基盤編:章ごとに読む

  1. Webアプリの仕組み画面・処理・保存の3段
  2. フロントエンドとSPAブラウザの中で動く部分
  3. CDNとキャッシュ近くの配達所から届ける
  4. ロードバランサーとオートスケール混んだら振り分け、足りなければ増やす
  5. 仮想マシン(VM)で動かす1台を何台にも分ける
  6. モノリスとマイクロサービス1つの塊か、小さな部品の集まりか
  7. コンテナ(Docker)アプリを箱ごと運ぶ
  8. Kubernetes(クバネティス)コンテナの司令塔
  9. サーバーレス必要なときだけ動く
  10. CI/CD(自動テストと自動デプロイ)作る・確かめる・届けるを自動化
  11. 監視とログ(オブザーバビリティ)中で何が起きているかを見えるように
  12. どこで動かす?(実行基盤の選び方)手間と自由のバランス
  13. クラウド別の対応表同じ役割、違う名前

図とデモで学ぶ(アプリ基盤編)→ | IT用語集 →