skillup

技術ブログ

サーバー・ネットワーク

Code4兄弟に関して(CodeCommit,CodeDeploy,CodeBuild,CodePipeline)

投稿日:2022年4月3日 更新日:

前回の記事で書いたCodeDeploy以外にもCI/CD絡みで色々と使用するサービスがあるので自分用にメモ。

Code兄弟なっていうようで・・・・

各サービス

CodeCommit

AWS上のGitHubみたいなもの。後述するサービスと連携させることができる。

CodePipeline

CircleCIのようにビルドやテスト、デプロイなど各タスクの手続きなどを、まとめて記載することができる。CodeBuildとCodeDeployの連携など。

CodeBuild

Docker環境でソースのビルドやS3へのアップロードを行うことができる(CircleCIのビルド部分を自動化するイメージ?)

処理のイメージ

  1. ソースがcodeCommitにプッシュされ、S3に配置される(CodePipelineのSource)
  2. S3からソースを取得して、CodeBuildでビルド実行(ライブラリのインストールなど)し、ビルド結果をS3に再度アップロード
  3. CodeDeployでビルドされたものをEC2上にデプロイ

上記の流れをCodePipelineで統括しているイメージ

実際の構築作業

  1. CIツールからcodeCommitに繋ぐ場合は、入口となるCodeCommitユーザーの作成(鍵登録+IAMの付与)
  2. buildspec.yamlファイル(実際にCodeBuildで実行されるビルドプロセス)を実装
  3. CodePipelineへのソース(CodeCommit)とビルド(CodeBuild)の登録
  4. CodePipelineへのデプロイ(CodeDeploy)の登録

ちなみに、上記に関しても前回同様の以下の記事の7章にものすごく詳細に書かれてます。スゴイ・・・

Laravel × CircleCI × AWSで学ぶCI/CD

-サーバー・ネットワーク
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

pythonのアップグレードに関して

pythonのアップグレードに関して。 python2.6だとpipがインストールされていないのですが、入れようとしてハマったのでメモ。 一般的なインストール方法ですが、下記のようになります。 [cr …

no image

vagrantで仮想環境を別PCにコピー

vagrantで自分の作った環境を他人にコピーしたい機会があり、なんとか成功したのでメモします。いや~便利ですね・・・ 環境は vagrant 1.7.4 win8 です。 Contents1 準備2 …

no image

pidファイルに関して

サーバー上であるサービスを動いている(と思っている)時にstopしようとしたらpidファイルがありませんと怒られました。 pidファイルってよく聞くけどわかっていなかったのでこれを機にメモ。 Linu …

no image

ログ抽出コマンド特集 その1 cat+grep+sort

先日、メモリ使用率の調査に関して記事をかいたのですが、今度はそのログの収集や抽出をおこなってみようかと思います。 やりたいこと yyyy/MM/dd-HH:mm:ss  メモリ使用率(少数2桁まで)  …

no image

php-fpmに関して

今回はphp-fpmに関して。会社のサーバー(このブログが載っているサーバー)がこれ使ってて、メモリをやたら消費しており、設定を見直す必要があったので、リサーチ。 Contents1 php-fpmと …

アーカイブ