1. 什么是 Docker

Docker 是一个软件平台,让您可以快速构建、测试和部署应用程序。Docker 将软件打包成名为容器的标准化单元,这些单元具有运行软件所需的所有功能,包括库、系统工具、代码和运行时。使用 Docker,您可以将应用程序快速部署和扩展到任何环境中。

在 AWS 上运行 Docker 可为开发人员和管理员提供一种高度可靠且成本低廉的方式来构建、发布和运行任何规模的分布式应用程序。AWS 支持 Docker 的两种许可模式:开源 Docker Community Edition (CE) 和基于订阅的 Docker Enterprise Edition (EE)。

2. Docker 的工作原理

Docker 的工作原理是提供一种标准方法来运行代码。Docker 是容器的操作系统。与虚拟机是用于虚拟化(无需直接管理)服务器的硬件类似,容器是用于虚拟化服务器的操作系统。Docker 安装在每个服务器上,并提供可用于构建、启动或停止容器的简单命令。

AWS FargateAmazon ECSAmazon EKSAWS Batch 等 AWS 服务让您能够轻松地大规模运行和管理 Docker 容器。
Docker on AWS - 图1

3. 为什么使用 Docker

通过使用 Docker,您可以更快地发布代码、实现应用程序操作的标准化、无缝迁移代码,并通过提高资源利用率来节省开支。借助 Docker,您可以获得一个能在任何地方可靠运行的对象。

它得到了广泛的采用,这意味着有一个由可与 Docker 配合使用的工具和现成应用程序组成的强大生态系统。

AWS 容器服务提供最广泛的服务选择供您运行容器。

  • 如果您想要进行容器的无服务器计算,您可以选择 AWS Fargate
  • 如果您需要控制计算环境的安装、配置和管理,则选 Amazon EC2。
  • 您还可以选择要使用哪个容器编排工具:Amazon Elastic Container Service (ECS) 或 Amazon Elastic Kubernetes Service (EKS)。

4. AWS 容器服务

使用案例 AWS 产品
存储、加密和管理容器映像 Amazon Elastic Container Registry (ECR)
运行容器化应用程序或构建微服务 Amazon Elastic Container Serivce (ECS)
使用 Kubernetes 管理容器 Amazon Elastic Kubernetes Service (EKS)
运行容器而无需管理服务器 AWS Fargate
使用服务器级控制运行容器 Amazon Elastic Compute Cloud (EC2)
将现有应用程序容器化和迁移现有应用程序 AWS App2Container
快速启动和管理容器化应用程序 AWS Copilot