Logo

新人日誌

首頁關於我部落格

新人日誌

Logo

網站會不定期發佈技術筆記、職場心得相關的內容,歡迎關注本站!

網站
首頁關於我部落格
部落格
分類系列文

© 新人日誌. All rights reserved. 2020-present.

本文為「AWS CI / CD」系列第 2 篇

AWS CI/CD 核心三劍客:CodePipeline、CodeBuild、CodeDeploy 深入解析

最後更新:2025年6月9日架構

當你想在 AWS 上實現一套自動化部署流程,CodePipeline、CodeBuild、CodeDeploy 是不可或缺的三大核心工具。

這三者分工明確,分別負責流程控制、建置執行與實際部署,能幫助你打造一條從程式碼變更到線上部署的全自動流水線。

本文將帶你深入理解它們的角色定位、執行流程與實作要點,並介紹常見的設定技巧與排錯方法,幫助你順利啟動 AWS 的 CI/CD 實務應用。

為什麼這三個服務是 CI/CD 的核心?

在 AWS 平台上實作 CI/CD(持續整合與持續部署),最常見的做法就是將整個流程拆成三個階段:控制流程 → 執行建置 → 完成部署。

而 AWS 提供的三大服務 —— CodePipeline、CodeBuild、CodeDeploy,正好對應這三個階段,構成一條標準、模組化的自動化部署流水線。

這三個服務彼此獨立,卻又能無縫整合,構成一個穩定、可擴充的自動化系統。

以下是它們各自的功能定位與常見用途:

工具角色定位常見用途
CodePipeline流程控制中心定義 CI/CD 的完整流程(來源、建置、測試、部署),控制每個階段的觸發與執行順序
CodeBuild建置與測試引擎在乾淨、安全的執行環境中進行程式碼建置、單元測試、靜態分析、打包 Artifact
CodeDeploy自動部署引擎將打包好的應用程式部署至目標環境,如 EC2、ECS、Lambda,並支援藍綠部署、漸進部署等策略
角色定位流程控制中心
常見用途定義 CI/CD 的完整流程(來源、建置、測試、部署),控制每個階段的觸發與執行順序
角色定位建置與測試引擎
常見用途在乾淨、安全的執行環境中進行程式碼建置、單元測試、靜態分析、打包 Artifact
角色定位自動部署引擎
常見用途將打包好的應用程式部署至目標環境,如 EC2、ECS、Lambda,並支援藍綠部署、漸進部署等策略

為什麼不是只有一個工具就能完成?

許多新手可能會好奇:「為什麼 AWS 不把這三個功能做成一個工具就好?」

原因是 模組化設計可以提高彈性與可維護性。

你可以只用 CodeBuild 來執行單元測試,也可以單獨使用 CodeDeploy 搭配 GitHub Actions 完成部署。

這樣的架構讓開發者可以依照自己的專案需求,自由組裝、擴充或替換任一階段的服務。

串接示意圖

以下是這三個服務在實際 CI/CD 流程中的串接方式:

flowchart TD
    A[CodeCommit / GitHub] --> B[CodePipeline]
    B --> |控制整個流程,定義各階段| C[CodeBuild]
    C --> |執行建置與測試腳本,產出部署檔案| D[CodeDeploy]
    D --> |將產物部署至 EC2 / ECS / Lambda 等運行環境| E[運行環境]

CodePipeline 是什麼?負責什麼階段?

基本概念:CI/CD 的流程大總管

AWS CodePipeline 是一個「流程導向」的 CI/CD 管理服務,負責掌控整條自動化部署流程的每個步驟。

它就像一位導演,負責安排什麼階段該做什麼事、誰要來執行、做完要不要繼續下一個階段。

透過 CodePipeline,你可以:

  • 設定當程式碼有異動時,自動觸發部署流程(例如 commit 到 GitHub)
  • 定義每個階段的行為(建置、測試、部署等)
  • 串接多個 AWS 服務或外部工具(如 Jenkins)
  • 可視化整個流程,每個階段成功與否都能追蹤與除錯

📌 重點:CodePipeline 不負責實際建置或部署,它只負責安排流程。
實際執行建置的是 CodeBuild,負責部署的是 CodeDeploy。

流程架構:由多個 Stage(階段)與 Action(動作)組成

在 AWS CodePipeline 中,一條完整的部署流程會被切分為數個 Stage(階段),而每個 Stage 之下會包含一或多個 Action(動作)。

這樣的架構就像一條裝配線,從上游的程式碼變更開始,經過一連串處理之後,最終完成部署。

每個 Stage 都是流程中的一個「大步驟」,而 Stage 裡的 Action 則是具體執行「某件事」的小單位。

例如在建置階段中,可以包含兩個 Action:一個負責安裝套件,一個負責打包專案。

🧠 重點原則:

  • 每個 Stage 的 Action 全部成功後,才會進入下一個 Stage。
  • Stage 可以平行多 Action,但整個 Stage 是依序執行(上到下)。

🧩 常見的三個核心階段(Stage)

在大多數 CI/CD 流程中,以下三個階段是最基礎、也最常見的:

階段名稱功能說明
Source Stage負責「監控原始碼變更」並觸發整條流程,常見來源如 GitHub、CodeCommit、S3 等。當程式碼有 push、merge、上傳等事件時,自動啟動流水線。
Build Stage負責「建置與測試」,通常會交由 CodeBuild 或 Jenkins 執行。這階段可能會執行 npm install、npm run build、單元測試或程式碼靜態分析等工作。
Deploy Stage將建置完成的產物自動部署到執行環境中(如 EC2、ECS、Lambda)。這階段常透過 CodeDeploy 或 CloudFormation 來操作。
功能說明負責「監控原始碼變更」並觸發整條流程,常見來源如 GitHub、CodeCommit、S3 等。當程式碼有 push、merge、上傳等事件時,自動啟動流水線。
功能說明負責「建置與測試」,通常會交由 CodeBuild 或 Jenkins 執行。這階段可能會執行 npm install、npm run build、單元測試或程式碼靜態分析等工作。
功能說明將建置完成的產物自動部署到執行環境中(如 EC2、ECS、Lambda)。這階段常透過 CodeDeploy 或 CloudFormation 來操作。

🧰 進階應用:自訂 Stage 與流程延伸

除了基本的 Source → Build → Deploy 三階段流程外,你也可以加入其他自定義的階段,以滿足更嚴謹的軟體交付需求:

自訂階段用途範例
Test Stage執行自動化測試、UI 測試、API 測試、整合測試等。
Security Scan使用工具(如 SonarQube、Checkmarx)進行程式碼弱點掃描。
Approval Stage加入人工審核(需點擊批准按鈕)後才能進入下一階段,常見於正式環境前。
Notification傳送 Slack、Email 通知或自訂 webhook。
用途範例執行自動化測試、UI 測試、API 測試、整合測試等。
用途範例使用工具(如 SonarQube、Checkmarx)進行程式碼弱點掃描。
用途範例加入人工審核(需點擊批准按鈕)後才能進入下一階段,常見於正式環境前。
用途範例傳送 Slack、Email 通知或自訂 webhook。

這樣的彈性設計可以讓 CodePipeline 既適合敏捷開發中的快速迭代,也能支援大型企業對風險控管與品質保證的需求。

支援來源與目的地工具一覽:高度整合與彈性擴充

CodePipeline 最大的優勢之一,就是它具備良好的開放性 —— 能無縫整合 AWS 原生服務,也支援外部 DevOps 工具與自訂行為。你不需要被 AWS 限制,而是可以根據你的開發環境自由組合。

階段類別支援服務(可直接整合)
SourceCodeCommit、GitHub、GitHub Enterprise、Amazon S3
BuildCodeBuild、Jenkins、自訂 Lambda Function(或外部 webhook 搭配)
DeployCodeDeploy、CloudFormation、Elastic Beanstalk、ECS、Lambda
支援服務(可直接整合)CodeCommit、GitHub、GitHub Enterprise、Amazon S3
支援服務(可直接整合)CodeBuild、Jenkins、自訂 Lambda Function(或外部 webhook 搭配)
支援服務(可直接整合)CodeDeploy、CloudFormation、Elastic Beanstalk、ECS、Lambda

💡 進階技巧:

  • 如果你使用的是非 AWS 的工具(如 GitLab CI、Bitbucket、DockerHub 等),也可以透過 webhook 或 AWS Lambda 進行整合。
  • 想加入通知、報告、審核等功能,也能透過 Action Type: Invoke 搭配 Lambda 來實現。

實作小舉例:一條簡單的三階段 Pipeline

以「部署一個 React 網站到 S3」為例:

  1. Source Stage:監聽 GitHub 專案是否有 push(分支為 main)
  2. Build Stage:使用 CodeBuild 執行 npm install → npm run build → 輸出到 build/
  3. Deploy Stage:把 build/ 內容部署到指定的 S3 靜態網站桶

整個流程都不需要手動操作,CodePipeline 會自動協調每一個階段,從檔案變動到完成部署,皆自動執行。

CodeBuild 是什麼?怎麼建構程式?

基本概念:CI/CD 流程中的建置與測試執行器

AWS CodeBuild 是一個由 AWS 提供的完全代管式建置服務(Build Service),專門負責在 CI/CD 流程中自動化完成以下工作:

  • 安裝依賴套件(如 npm、pip、composer 等)
  • 編譯程式碼(如 TypeScript → JavaScript、Java → Bytecode)
  • 執行測試(單元測試、自動化測試)
  • 打包並產出部署用的檔案(Artifact)
  • 上傳成果至 S3 或交由後續階段(如 CodeDeploy)使用

你無需自行建立建置伺服器,也不需維護執行環境,只要提供一份設定檔,它就能在乾淨的容器中完成整個建置流程。

CodeBuild 的運作基礎:buildspec.yml

CodeBuild 的工作內容,來自於你在專案根目錄提供的 buildspec.yml 檔案。

這是一份 YAML 格式的指令腳本,定義了每一階段要執行的動作。

📌 重點是:你不需要在 CodeBuild 控制台逐行輸入命令,而是寫在 buildspec.yml 裡,讓 CodeBuild 自動讀取與執行。

buildspec.yml 範例與解析

以下是一個典型用於建置 React 網站的範例:

version: 0.2  # 目前版本建議使用 0.2

phases:
  install:
    runtime-versions:
      nodejs: 16
    commands:
      - echo Installing dependencies...
      - npm install

  build:
    commands:
      - echo Build started on `date`
      - npm run build

artifacts:
  files:
    - dist/**/*  # 將打包好的網站檔案輸出,供部署用

說明重點:

  • phases: 定義各階段的動作,常見階段有 install、pre_build、build、post_build
  • runtime-versions: 指定所需語言的版本(如 Node.js 16)
  • commands: 實際要在每階段執行的命令
  • artifacts: 定義要打包輸出的檔案(會上傳到指定位置供後續使用)

💡 可以想像 buildspec.yml 就像是在本地機執行一段 shell script,不過由 AWS 容器代勞,乾淨、快速、可追蹤。

CodeBuild 的常見功能與優勢

功能說明
✅ 多語言支援預設支援 Node.js、Python、Java、Go、Ruby、PHP 等常見語言
✅ 自訂執行環境(Docker)可以使用你自訂的 Docker image 來建置,例如內建特殊套件或工具的環境
✅ 雲端建置,無需維護機器完全免去設定 Jenkins Slave、CI Server 的麻煩,AWS 幫你建好執行環境
✅ 與 IAM 整合可控權限範圍,安全建置;僅能存取你允許的資源(S3、ECR、Secrets Manager 等)
✅ 輸出 Artifact 上傳 S3建置完成後可以自動把檔案上傳到指定的 S3 Bucket,供 CodeDeploy 或手動下載使用
說明預設支援 Node.js、Python、Java、Go、Ruby、PHP 等常見語言
說明可以使用你自訂的 Docker image 來建置,例如內建特殊套件或工具的環境
說明完全免去設定 Jenkins Slave、CI Server 的麻煩,AWS 幫你建好執行環境
說明可控權限範圍,安全建置;僅能存取你允許的資源(S3、ECR、Secrets Manager 等)
說明建置完成後可以自動把檔案上傳到指定的 S3 Bucket,供 CodeDeploy 或手動下載使用

常見實際應用情境

情境CodeBuild 可做的事
建置 React / Vue 前端應用自動執行 npm install、npm run build,輸出 dist/ 資料夾
建置 Java 專案(如 Maven)自動編譯 .java 檔案、打包 .jar 或 .war,上傳到 S3 或 Elastic Beanstalk
執行自動化測試與 Linter在 build 階段跑 ESLint、Jest、Pytest 等測試,失敗即終止流程
Docker Image 打包 + 上傳到 ECR自訂 buildspec.yml,使用 CLI 打包 Docker 並推送到 Amazon Elastic Container Registry
CodeBuild 可做的事自動執行 npm install、npm run build,輸出 dist/ 資料夾
CodeBuild 可做的事自動編譯 .java 檔案、打包 .jar 或 .war,上傳到 S3 或 Elastic Beanstalk
CodeBuild 可做的事在 build 階段跑 ESLint、Jest、Pytest 等測試,失敗即終止流程
CodeBuild 可做的事自訂 buildspec.yml,使用 CLI 打包 Docker 並推送到 Amazon Elastic Container Registry

除錯與日誌追蹤

CodeBuild 每次執行都會自動產生詳細的建置日誌,可在 AWS Console 的 Build history 中查閱。

你可以逐行檢查哪個指令失敗,甚至支援導出 CloudWatch Logs 以便進一步監控與警示。

CodeDeploy 是什麼?如何自動部署?

基本概念:部署流程的最後一哩路

AWS CodeDeploy 是一個由 AWS 提供的自動部署服務,主要負責將建置完成的應用程式「部署」到指定的執行環境中。

你可以把它想像成負責「把東西放上伺服器、啟動程式」的工具,是 CI/CD 流程中不可或缺的最後一環。

與 CodePipeline 和 CodeBuild 一樣,CodeDeploy 是一項全託管服務,不需要自己維護部署腳本執行器或遠端登入主機操作。

它可根據你定義的部署邏輯,穩定地將應用程式部署至雲端或本地環境。

支援的部署目標(環境類型)

環境類型適用情境與說明
EC2傳統的虛擬機部署,可指定一組 EC2 實例部署 Web App、後端服務等。支援滾動更新、分批部署。
ECS適用於容器化服務部署,支援 Blue/Green(藍綠部署)策略,適合微服務架構與可用性要求高的系統。
Lambda支援無伺服器架構,部署時會將新的 Lambda 版本導入,並更新別名指向最新版本。
On-Premises可部署到企業內部伺服器,只要安裝 CodeDeploy agent 並註冊實例即可使用。
適用情境與說明傳統的虛擬機部署,可指定一組 EC2 實例部署 Web App、後端服務等。支援滾動更新、分批部署。
適用情境與說明適用於容器化服務部署,支援 Blue/Green(藍綠部署)策略,適合微服務架構與可用性要求高的系統。
適用情境與說明支援無伺服器架構,部署時會將新的 Lambda 版本導入,並更新別名指向最新版本。
適用情境與說明可部署到企業內部伺服器,只要安裝 CodeDeploy agent 並註冊實例即可使用。

✅ CodeDeploy 特別適合想要:可控部署節奏、支援多環境、流程自動化、具備回滾機制 的情境。

CodeDeploy 的工作原理

CodeDeploy 的部署邏輯是根據你提供的設定檔來執行 —— 也就是專案根目錄下的 appspec.yml。

整體流程如下:

  1. CodePipeline 或其他流程工具將 artifact(應用程式檔案)交給 CodeDeploy
  2. CodeDeploy 將 artifact 傳送至部署目標(如 EC2 實例)
  3. 根據 appspec.yml 的內容,執行部署與腳本指令(如解壓縮、安裝、重啟)
  4. 可追蹤每一個階段是否成功,如失敗可自動或手動中止或回滾

💡 CodeDeploy 並不會決定如何部署,而是執行你所定義的部署步驟。

appspec.yml 範例與解析(以 EC2 為例)

version: 0.0
os: linux

files:
  - source: /
    destination: /home/ec2-user/app

hooks:
  AfterInstall:
    - location: scripts/install.sh
      timeout: 300
      runas: ec2-user

🧩 結構說明:

區塊說明
versionappspec 檔案格式,目前 EC2 使用 0.0,Lambda 則是 0.0 或 1.0
os目標作業系統類型(linux 或 windows)
files定義 artifact 中哪些檔案要複製到目標位置(可單檔、資料夾、多個目標)
hooks定義在部署流程中的「哪個階段」要執行哪些腳本,可控制部署流程(如安裝、重啟、測試等)
說明appspec 檔案格式,目前 EC2 使用 0.0,Lambda 則是 0.0 或 1.0
說明目標作業系統類型(linux 或 windows)
說明定義 artifact 中哪些檔案要複製到目標位置(可單檔、資料夾、多個目標)
說明定義在部署流程中的「哪個階段」要執行哪些腳本,可控制部署流程(如安裝、重啟、測試等)

📜 常見的 Hook 階段(以 EC2 為例):

階段名稱說明
BeforeInstall解壓縮與覆蓋檔案前執行,可用來停止服務或備份舊資料
AfterInstall檔案複製完成後執行,可用來安裝依賴、搬移檔案等
ApplicationStart部署結束後啟動應用程式、啟動伺服器等動作
ValidateService驗證服務是否啟動成功(可設條件回報部署成功與否)
說明解壓縮與覆蓋檔案前執行,可用來停止服務或備份舊資料
說明檔案複製完成後執行,可用來安裝依賴、搬移檔案等
說明部署結束後啟動應用程式、啟動伺服器等動作
說明驗證服務是否啟動成功(可設條件回報部署成功與否)

部署策略與版本控管(進階應用)

CodeDeploy 提供多種部署策略,讓你更靈活控制新版本上線節奏,降低風險:

部署策略說明
In-place 部署直接在原本的實例上覆蓋舊版程式碼(適用 EC2、本地)
Blue/Green同時維護兩組環境(舊版與新版),先將新版部署至閒置環境,再轉向流量(適用 ECS、Lambda)
說明直接在原本的實例上覆蓋舊版程式碼(適用 EC2、本地)
說明同時維護兩組環境(舊版與新版),先將新版部署至閒置環境,再轉向流量(適用 ECS、Lambda)

這讓你可以實作:

  • 分批部署(一批一批上)
  • 手動審核(部署需通過審核才可推進)
  • 自動回滾(失敗即還原至先前版本)

CodeDeploy 與 CI/CD 流程的關係

在一條完整的 AWS CI/CD Pipeline 中,CodeDeploy 負責:

  1. 接收 CodeBuild 輸出的 artifact(透過 S3 傳遞)
  2. 根據 appspec.yml 對目標實例進行部署
  3. 通知 CodePipeline 是否成功完成部署階段

✅ CodeDeploy 不只整合 CodePipeline,也能單獨搭配 Jenkins、GitHub Actions、CLI 使用,具備高彈性與擴充性。

三者之間如何串接?

在實作 AWS CI/CD 流程時,CodePipeline、CodeBuild、CodeDeploy 三者並不是各自為政,而是能自然地串接起來,形成一條 從程式碼提交到自動部署完成的完整自動化流水線。

你可以這樣理解:

  • CodePipeline 是「流程指揮官」,掌握每一個階段的執行順序
  • CodeBuild 是「建置職人」,負責實際編譯、測試、打包應用程式
  • CodeDeploy 是「部署工程師」,負責把產出的應用部署到真正的伺服器環境中

這三個角色環環相扣,缺一不可。

串接流程詳解(四大步驟)

以下是一條從原始碼提交開始,到部署完成的典型 AWS CI/CD 流程,每一步都由三劍客分工合作:

1️⃣ CodePipeline 啟動流程(通常由 Push 觸發)

當開發者在 GitHub 或 CodeCommit 進行 Push / Merge / PR 合併 等操作後,CodePipeline 會偵測到程式碼變更,並啟動整條流水線。

這個動作發生在 Source Stage,是整條 CI/CD 的起點。

來源可以是 GitHub、CodeCommit、S3 等支援的 Source Provider。

2️⃣ CodeBuild 執行建置腳本並產出 Artifact

進入 Build Stage 後,CodePipeline 會呼叫 CodeBuild,讓它依照 buildspec.yml 的指令來:

  • 安裝依賴套件
  • 編譯 / 打包應用程式
  • 執行測試
  • 輸出部署用的檔案(Artifact)

產出的 Artifact 會被暫存起來,作為下一階段部署的輸入物。你可以選擇上傳至 S3,或讓 CodePipeline 直接在記憶體內傳遞給 CodeDeploy。

3️⃣ 傳遞 Artifact 給 CodeDeploy

CodePipeline 將 CodeBuild 的輸出傳遞給 CodeDeploy,這時會進入 Deploy Stage。你可以:

  • 設定目標為 EC2 / ECS / Lambda
  • 指定 Artifact 存放位置(通常是某個 S3 Bucket)
  • 搭配 appspec.yml 決定如何部署與是否執行腳本

📦 若你使用 EC2 部署,CodeDeploy agent 會將 Artifact 下載到本機,並依照 appspec.yml 內定義的階段(BeforeInstall、AfterInstall 等)依序執行部署流程。

4️⃣ CodeDeploy 執行部署與回報結果

最後一步,CodeDeploy 會依據你事先定義的流程:

  • 解壓與安裝應用程式
  • 執行腳本(啟動服務、遷移資料、驗證健康狀態…)
  • 完成部署,並回報狀態給 CodePipeline

CodePipeline 可以根據回報結果決定是否將整條流程標示為成功或失敗,也可以觸發後續行為(如通知、回滾、人工審核等)。

串接示意圖(邏輯流程圖)

flowchart TD
    A[開發者 Push 程式碼至 GitHub / CodeCommit] --> B[CodePipeline 啟動流程控制]
    B --> C[CodeBuild 執行建置任務]
    C --> D[產出 Artifact → 上傳 S3 或直接傳遞]
    D --> E[CodeDeploy 根據設定自動部署到 EC2/ECS/Lambda]
    E --> F[部署完成,回報 CodePipeline 成功 / 失敗]

實務小提醒

注意事項解說
✅ 每一階段都可單獨執行你可以只用 CodeBuild 或 CodeDeploy,不一定要全部串在 CodePipeline 中
✅ 資源傳遞使用 artifact 機制CodeBuild 輸出的檔案稱為 artifact,CodePipeline 負責將它傳遞給下一個階段
✅ IAM 權限需正確設置CodeBuild、CodeDeploy 都需要有權限去讀取 S3、部署資源、寫入 CloudWatch Logs 等
✅ 日誌可查、易追蹤所有過程的成功或失敗訊息會記錄在每個服務的 Logs 與 CodePipeline 視覺化流程中
解說你可以只用 CodeBuild 或 CodeDeploy,不一定要全部串在 CodePipeline 中
解說CodeBuild 輸出的檔案稱為 artifact,CodePipeline 負責將它傳遞給下一個階段
解說CodeBuild、CodeDeploy 都需要有權限去讀取 S3、部署資源、寫入 CloudWatch Logs 等
解說所有過程的成功或失敗訊息會記錄在每個服務的 Logs 與 CodePipeline 視覺化流程中

結語:掌握 AWS CI/CD 三劍客,就能啟動自動化部署!

這篇文章深入介紹了 CodePipeline、CodeBuild、CodeDeploy 三大服務的角色與使用方式,從架構理解到設定檔撰寫,讓你對 AWS 的 CI/CD 實作流程有了明確的掌握。

若你已了解這些核心工具,下一步可以探索更多進階服務與整合:

  • CodeCommit – Git 儲存庫整合
  • CodeArtifact – 建置產物倉儲與套件管理
  • IAM Role / CloudWatch – 安全與監控支援
上一篇AWS CI/CD 從零開始 – 工具地圖與架構總覽
下一篇AWS CodeCommit 與 CodeArtifact 完整教學:原始碼與套件的雲端儲存解決方案
目前還沒有留言,成為第一個留言的人吧!

發表留言

留言將在審核後顯示。

架構

目錄

  • 為什麼這三個服務是 CI/CD 的核心?
  • 為什麼不是只有一個工具就能完成?
  • 串接示意圖
  • CodePipeline 是什麼?負責什麼階段?
  • 基本概念:CI/CD 的流程大總管
  • 流程架構:由多個 Stage(階段)與 Action(動作)組成
  • 支援來源與目的地工具一覽:高度整合與彈性擴充
  • 實作小舉例:一條簡單的三階段 Pipeline
  • CodeBuild 是什麼?怎麼建構程式?
  • 基本概念:CI/CD 流程中的建置與測試執行器
  • CodeBuild 的運作基礎:buildspec.yml
  • buildspec.yml 範例與解析
  • CodeBuild 的常見功能與優勢
  • 常見實際應用情境
  • 除錯與日誌追蹤
  • CodeDeploy 是什麼?如何自動部署?
  • 基本概念:部署流程的最後一哩路
  • 支援的部署目標(環境類型)
  • CodeDeploy 的工作原理
  • appspec.yml 範例與解析(以 EC2 為例)
  • 部署策略與版本控管(進階應用)
  • CodeDeploy 與 CI/CD 流程的關係
  • 三者之間如何串接?
  • 串接流程詳解(四大步驟)
  • 串接示意圖(邏輯流程圖)
  • 實務小提醒
  • 結語:掌握 AWS CI/CD 三劍客,就能啟動自動化部署!