5 個 AWS 使用者必懂的 Docker 基礎
5 個 Docker 基礎一次看懂:容器、映像檔、ECS、Fargate、Batch,幫你判斷 AWS 上該怎麼打包與部署。

Docker 把應用打包成容器,讓它在 AWS 和其他環境都能用相同方式執行。
Docker 是用容器建置與執行應用的平台。AWS 也提到,使用 Docker 的團隊平均比非使用者更常發佈軟體,頻率高出 7 倍。看完這 5 項,你就能判斷該從打包、儲存、排程,還是直接上雲端執行開始。
| 項目 | 是什麼 | AWS 對應 |
|---|---|---|
| Docker 容器 | 標準化執行單位 | 本機開發、測試、部署 |
| Docker 映像檔 | 唯讀模板 | Amazon ECR 儲存與拉取 |
| Amazon ECS | 容器編排服務 | 大規模執行 Docker |
| AWS Fargate | 無伺服器容器運算 | 免管主機直接跑容器 |
| AWS Batch | 批次工作執行器 | 容器化批次任務 |
1. Docker 容器
訂閱 AI 趨勢週報
每週精選模型發布、工具應用與深度分析,直送信箱。不定期,不騷擾。
不會寄垃圾信,隨時可取消。
Docker 會把應用程式、相依套件、系統工具與執行環境一起包進容器。這樣一來,同一份應用從筆電搬到雲端伺服器時,行為會更一致。

對團隊來說,容器的價值在於把「機器」變成次要,把「交付單位」變成主要。你不必為每台主機重做設定,部署也更容易重現。
- 包含程式碼、相依性與 runtime
- 跨環境行為一致
- 適合本機開發與正式部署
2. Docker 映像檔
Docker 映像檔是容器的唯讀模板。映像檔啟動後,就會變成正在執行的容器。AWS 建議把這些映像檔放在 Amazon ECR,方便安全儲存與提取。
可以把映像檔想成藍圖,把容器想成實際運作的成品。這種切分方式,讓版本控管、重複使用與 CI/CD 流程都更清楚。
image = template
container = running instance
ECR = private image registry3. Amazon ECS
Amazon ECS 是 AWS 的容器編排服務,用來在規模化環境中管理 Docker 容器。它可以處理容器的放置、啟動、停止與更新。

如果你已經在本機用 Docker 開發,ECS 的好處是可以沿用同一套容器工作流,不必先把應用改寫成另一種部署格式。
- 適合服務型與微服務架構
- 能和本機 Docker 流程銜接
- 可管理多個容器與更新節奏
4. AWS Fargate
AWS Fargate 是容器運算服務,但你不用自己管理伺服器。它和 ECS 搭配使用,讓 AWS 負責底層基礎設施,你專心處理應用本身。
如果團隊不想花時間維護叢集、節點與主機配置,Fargate 很適合。它也很適合把 Docker Compose 類型的工作流,往 AWS 上的受管執行環境推進。
- 不用自行配置或維護主機
- 適合正式環境的容器執行
- 常與 ECS 一起使用
5. AWS Batch
AWS Batch 會用 Docker 容器來跑批次工作,像是資料處理、分析任務,或任何可排程、可排隊的作業。
這代表 Docker 不只適合 Web 服務,也適合重複執行的離線任務。對資料管線、科學運算或大量作業來說,容器能把工作封裝得更容易重跑。
- 適合批次與離線處理
- 支援可擴充的工作執行
- 常見於資料與分析流程
怎麼挑
如果你剛開始學,先懂 Docker 容器與映像檔,因為它們定義了打包與交付方式。若你的目標是把服務跑在 AWS 上,先看 ECS,再看 Fargate,當你想少管主機時尤其有用。
如果你的工作以任務為主而不是長駐服務,AWS Batch 會更合適。若你需要保存與分發映像檔,ECR 就是整個流程的儲存層。