CodePipelineとGitLabの使い方
最終更新日:2026年8月10日
CodePipelineとGitLab
| 項目 | AWS | Microsoft Azure | Google Cloud |
|---|---|---|---|
| 世界シェア | 約33%(首位) | 約22% | 約11% |
| 強み | サービス数・実績 | Microsoft製品連携 | データ分析・AI |
| 無料枠 | 12ヶ月+常時無料 | 12ヶ月無料 | 常時無料枠あり |
| 主な資格 | CLF / SAA / SAP | AZ-900 / AZ-104 | ACE / PCA |
本記事では、Amazon Web Serviceが提供するCodePipelineとGitLabについて、それぞれのサービスがどういったものか説明した後、利用方法やこの2つのサービスを活用していく方法について紹介させていただきます。
CodePipelineとは
CodePipelineとは、Amazon Web Serviceが提供するフルマネージド型の継続的デリバリーサービスです。アプリケーションの継続的デリバリーや継続的インテグレーションを可能にするためのツールとなります。継続的インテグレーションとは、コードに生じた変更を頻繁に更新していくことで定期的かつ自動的にプログラムの諸要素のビルド・テストを行うプログラムの開発手法の1つです。変更の反映を頻繁に行うことで、複数人で作業を行う上で作業の衝突や競合の早期発見やエラーの早期発見といった効果が見込めます。継続的デリバリーとは継続的インテグレーションを拡張し、ビルド・テストが終了した後リリースを行う本番環境での反映までを行い、完全に自動化されたリリースプロセスを用いてプログラムを常に本番環境でリリース可能な状況とすることで、迅速なリリースを継続的に行う開発手法です。
では、こういった継続的デリバリーや継続的インテグレーションに対してCodePipelineはどのようなアプローチが出来るのでしょうか?CodePipelineはあらかじめソースコードの取得先として、Amazon Web ServiceのSimple Storage Service通称S3やGitHubなどを指定することが可能です。指定した取得先からソースコードを取得し、設定したテスト、環境を用いてプログラムのテストとデプロイを自動的に実行します。どのようなパイプラインを構築するかは自由で、テストやデプロイプロセスを外部のアプリケーションを用いてパイプラインに組み込むことも可能です。フルマネージド型なので、管理などはAmazon Web Serviceが行ってくれます。各ステージにおける開発プロセスを可視化し、かつビルド・テストを自動で実行できるプロセスを構築できるため簡単に継続的デリバリー、継続的インテグレーションを実現できます。
GitLabとは
GitLabはGitHubと同様、Gitのリポジトリをホスティングすることが出来るサービスです。出来ることとして、ソースコードをレビューしたり、課題の管理を行うなど、おおよそ開発に必要な機能は実装されています。GitLabにはオープンソースの無料版のものと、有償版の製品の2種類があります。そこまで機能面などに違いは無いものの有償版ではPremiumグレード以上でGitLab本社からのサポートが受けられる、新たに追加された機能を先行して使用することが出来る、といったメリットがあります。現在でもGitLabは頻繁に開発が行われており、少し前ではあくまでGitLabはGitHubの後追いというイメージだったのですが、最近ではGitHubには搭載されていないような便利な機能がGitLabに実装されていることなどもありGitLabの方が良い、という声もあります。しかしながら開発が頻繁な側面、セキュリティ面での更新などが頻繁に行われており、インターネット上にGitLabを公開する場合はセキュリティ面で独自に対策を講じる必要があります。
CodePipelineとGitLabを組み合わせる
GitLabを用いて継続的インテグレーションや継続的デリバリーが可能な環境を構築することも出来ますが、CodePipelineと組み合わせることでより効率的に継続的インテグレーション、継続的デリバリーを実現することが出来ます。従来からよく使われてきた実用例の一つに、Amazon Web ServiceのSimple Storage ServiceへのソースコードのアップロードまでGitLabで管理を行い、Simple Storage Serviceからのプログラムのテスト、本番環境への反映をCodePipelineを用いて自動化して実行する、というプロセスがあります。この構成でCodePipelineとSimple Storage Serviceの間の接続には、Amazon Web Serviceの提供するCodeCommitを用い、GitLabリポジトリをCodeCommitリポジトリにミラーリングすることで接続をスムーズに行う、という方式が採られてきました。
【要注意】CodePipelineとGitLabの接続方式は変化しています
現在のCodePipeline(V2パイプライン)は、AWS CodeConnections(旧CodeStar Connections)を利用することで、GitLab.comやGitLab self-managedをソースプロバイダーとして直接指定できます。上記のようなCodeCommitへのミラーリングを介さずとも、GitLabリポジトリを直接パイプラインのソースに設定できるため、新規に構成する場合はCodeConnections経由の直接接続を検討することをおすすめします。また、AWS CodeCommitは2024年に新規顧客への提供が一時停止されましたが、2025年11月24日にAWS公式が新規サインアップ再開(一般提供再開)を発表しており、既存構成の維持や新規利用も可能な状態に戻っています。実際の構成・料金・対応リージョンなどの最新情報は、必ずAWS公式サイトでご確認ください。
実際に導入する上では、プロジェクトに適した開発手法なのか、といったことやコストパフォーマンス等を鑑みて検討する必要があったり、環境を構築する上で別途サーバーやアカウントなどを他に準備する必要などがありますが、継続的インテグレーションや継続的デリバリーを導入することで得られるメリットは支払うコストに対して十分得られるものがあります。
押さえておきたいポイント
- CodePipelineはS3・GitHub・CodeConnections経由のGitLab等、複数のソースからソースコードを取得できるフルマネージドのCI/CDサービスで、ビルド・テスト・デプロイの各ステージを自動化・可視化できる。
- GitLabには無料のオープンソース版と有償版があり、有償版(Premiumグレード以上)ではGitLab本社によるサポートや新機能の先行利用といったメリットがある一方、公開運用時はセキュリティ対策を独自に講じる必要がある。
- GitLabとCodePipelineの連携方式には、AWS CodeConnections経由の直接接続と、CodeCommitへのミラーリングを介した従来方式があり、要件やインフラ構成に応じて選択するとよい。
よくある質問
CodePipelineとCodeCommitは何が違いますか?
CodeCommitはGitリポジトリそのものをホスティングするサービスで、CodePipelineはソースコード取得からビルド・テスト・デプロイまでの一連の流れ(CI/CDパイプライン)を自動化・オーケストレーションするサービスです。役割が異なるため、CodeCommitやGitLabなどのリポジトリをソースとしてCodePipelineに組み込む、という関係になります。
GitLabをCodePipelineのソースとして直接使えますか?
はい。現在はAWS CodeConnectionsを利用することでGitLab.com・GitLab self-managedを直接ソースに指定できます。CodeCommitへのミラーリングは必須ではなく、既存構成として残っている場合はそのまま利用することも、CodeConnections経由の直接接続に移行することも可能です。
GitLabの無料版と有償版はどちらを選べばよいですか?
基本的な開発機能(リポジトリ管理・コードレビュー・課題管理など)は無料版でも十分に利用できます。GitLab本社の公式サポートや新機能の先行提供を重視する場合、あるいは組織規模でのガバナンス・セキュリティ機能が必要な場合は有償版(Premium/Ultimate)の検討をおすすめします。料金体系は変更されることがあるため、最新情報はGitLab公式サイトでご確認ください。
まとめ
ここまでお読みいただきありがとうございます。いかがだったでしょうか。開発プロセスを講じる上でその手法については、色々な手法があるため十分考える必要があります。継続的インテグレーションや継続的デリバリーといった手法を取り入れることでより効率的かつ迅速に開発を行うことが出来るようになります。是非、ご一考ください!
▼ アクロビジョンについて


