使用 ECS 部署 docker 容器映像

在將 ECS 例項新增到群集之前,必須首先轉到 EC2 管理控制檯並建立具有附加了 AmazonEC2ContainerServiceforEC2Role 策略的 IAM 角色的 ecs-optimized 例項。

  1. 轉到 EC2 儀表板 ,然後單擊 Launch Instance 按鈕。
  2. Community AMIs 下,搜尋 ecs-optimized,並選擇最適合你專案需求的那個。任何會工作。點選下一步。
  3. 當你到達 Configure Instance Details 時,點選 create new IAM role link 並建立一個名為 ecsInstanceRole 的新角色。
  4. AmazonEC2ContainerServiceforEC2Role 策略附加到該角色。
  5. 預設情況下,容器例項將啟動到 default 群集中。如果要啟動到自己的群集而不是預設群集,請選擇 Advanced Details 列表並將以下指令碼貼上到 User data 欄位中,將 your_cluster_name 替換為群集名稱。
#!/bin/bash
echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config
  1. 然後,完成配置 ECS 例項。

注意:如果你要建立 Web 伺服器,則需要建立 securityGroup 以允許訪問埠 80。

  1. 建立儲存庫:aws ecr create-repository --repository-name example-repository
  2. 驗證你的 Docker 客戶端到你的登錄檔:aws ecr get-login --region us-east-1 | sh
  3. 構建你的 Docker 映象:docker build -t example-image .
  4. 標記你的影象,以便你可以將影象推送到此儲存庫:docker tag example-image:latest example-namespace/example-image:latest
  5. 將此影象推送到新建立的 AWS 儲存庫:docker push example-namespace/example-image:latest
  6. 註冊 ECS 任務定義:aws ecs register-task-definition --cli-input-json example-task.json
  7. 執行任務:aws ecs run-task --task-definition example-task