CI/CDとは

概要

CI/CDとは、
ソフトウェアの開発からリリースまでの流れを自動化・効率化するための開発手法や仕組みのことです。
CIは「継続的インテグレーション」、CDは「継続的デリバリー」または「継続的デプロイメント」を指します。
バグの早期発見やリリースの高速化、品質向上を目的に、モダンな開発現場ではほぼ必須の仕組みです。

正式名称

  • CIContinuous Integration(コンティニュアス・インテグレーション)
  • CD
    Continuous Delivery(コンティニュアス・デリバリー)
    または Continuous Deployment(コンティニュアス・デプロイメント)

略称

  • CI(シー・アイ)
  • CD(シー・ディー)

特徴

  • CI(継続的インテグレーション)
    開発中のコードを頻繁に統合(マージ)する
    自動でテスト・Lint・ビルドを実行
    バグの早期発見と品質維持に役立つ
  • CD(継続的デリバリー/デプロイメント)
    本番環境やステージング環境へ自動でデプロイ(配信)
    手動によるミスを防ぎ、リリース作業を効率化
    常にリリース可能な状態を保つ
  • 開発スピードを保ちながら、安全かつ信頼性の高いリリースができる
  • GitHub Actions、GitLab CI、CircleCIなどの自動化ツールと連携して使う

具体例

シーン解説
GitHubへコードをPushGitHub Actionsが自動でCI/CDを実行
composer install を自動実行PHPの依存関係をCI環境で再現
PHPUnitで自動テストPHPの単体テストをCIで毎回実行
Laravelアプリを自動デプロイCI/CDツールがサーバーやVPSにデプロイ(例:Capistrano、Deployer)
.envの切り替えやマイグレーション自動化本番・開発環境の切り替えも含めた安全なデリバリー

関連用語

用語解説
GitHub ActionsGitHubに統合されたCI/CD自動化ツール
CircleCICI/CD専用のクラウドサービス
Jenkins古くからある自動化ツール。自由度が高いが構築がやや複雑
デプロイサーバーなどにアプリケーションを配信・反映する作業
ユニットテストコードの各部が正しく動作しているかを確認するテスト(CIの一環で実行)
パイプラインCI/CDで行われる一連の処理の流れ。ビルド、テスト、デプロイなどが含まれる
Linterコーディングミスを自動で指摘するツール(CIと組み合わせて使う)

タイトルとURLをコピーしました