安装 AWS CLI

安装Pip

1curl -O https://bootstrap.pypa.io/get-pip.py

2python get-pip.py --user

使用 Pip 安装AWS CLI

pip install awscli --upgrade --user

安装 Docker

更新系统并安装 docker 服务

sudo yum update -y && sudo yum install -y docker

启动docker 服务

sudo service docker start

将 ec2-user 添加到 docker 组,以便您能够执行 Docker 命令、然后重启 EC2

sudo usermod -a -G docker ec2-user

验证 ec2-user 是否能在没有 sudo 的情况下运行 Docker 命令

docker info

创建 Docker 映像

编辑Dockerfile文件

touch Dockerfile

将以下内容复制到Dockerfile中

FROM ubuntu:18.04

# Install dependencies
RUN apt-get update && \
 apt-get -y install apache2

# Install apache and write hello world message
RUN echo 'Hello World!' > /var/www/html/index.html

# Configure apache
RUN echo '. /etc/apache2/envvars' > /root/run_apache.sh && \
 echo 'mkdir -p /var/run/apache2' >> /root/run_apache.sh && \
 echo 'mkdir -p /var/lock/apache2' >> /root/run_apache.sh && \ 
 echo '/usr/sbin/apache2 -D FOREGROUND' >> /root/run_apache.sh && \ 
 chmod 755 /root/run_apache.sh

EXPOSE 80

CMD /root/run_apache.sh

构建镜像

docker build -t hello-world .

运行镜像

docker run -t -i -p 80:80 hello-world

如果您使用的是 EC2 实例,这将是服务器的 Public DNS 值,此值与您用于通过 SSH 连接到实例的地址相同。确保实例的安全组允许端口 80 上的入站流量

通过 实例ip + 端口 可访问应用服务:52.81.102.108:80

以上内容为前提条件,镜像为测试、通过键入 Ctrl +c 来停止 Docker 容器

构建、标记、推送Docker映像

创建 ECR 存储库、查看推送命令

在使用推送命令之前、需要设置 aws 信息

aws configure

AWS Access Key ID [None]: AKIAOPI2G(用户ID key)

AWS Secret Access Key [None]: s7Ji+iWFiMgGK5WkEeONdC(用户ID 密钥)

Default region name [None]: cn-north-1(当前所在region)

Default output format [None]: json

配置完后、开始使用 推送镜像命令

检索登录命令、对 Docker 客户端进行身份验证,以允许其访问您的注册表

aws ecr get-login --no-include-email --region cn-north-1

输入以上命令后得到以下信息

docker login -u AWS -p eyJwYsjocvnngocjkgoqjoc…..中间省略  https://297669174308.dkr.ecr.cn-north-1.amazonaws.com.cn

然后将信息拷贝后粘贴到终端、完成身份验证。

使用以下命令生成 Docker 映像、其他应用程序也可以做成镜像

docker build -t hello-world . (上面已生成、此步骤可忽略)

生成完成后,标记您的映像 (红色为 tag 名字、方便推送)

docker tag yg-test:latest 297669174308.dkr.ecr.cn-north-1.amazonaws.com.cn/hello-world:latest

运行以下命令将此映像推送到您新创建的 AWS ECR 存储库:红色为镜像名称、后面作为运行容器的镜像

docker push 297669174308.dkr.ecr.cn-north-1.amazonaws.com.cn/hello-world:latest

开始使用ECS

创建集群:用于运行任务请求的一个或多个容器实例的区域性分组

任务定义:任务定义为您的应用程序指定容器信息、创建新任务定义、添加容器、设置每个容器服务的端口映射后添加容器
(例如,您的任务中包含多少个容器,它们使用哪些资源,它们如何链接在一起,以及它们将使用哪些主机端口)

运行该任务之后、会自动分配到集群实例当中运行( 若是个空集群、该任务运行会失败 )

看到该任务已在集群中处于 Running状态

最后可通过该 ip + 端口号可访问服务:

根据以上内容、您可以了解到应用如何打包成镜像、如何上传 ECR 仓库、如何生成容器并在集群中运行

AWS ECS 如何使用?相关推荐

  1. 使用Fargate在AWS ECS中部署ASP.NET Core 微服务

    目录 介绍 为何选择ECS Fargate? 先决条件 应用架构 AWS基础架构 ASP.NET Core WebAPI的准备情况 在ECS上运行Docker镜像容器 使用Cloudformation ...

  2. AWS: ECS Fargate + ELB的使用(CDK)

    AWS: ECS Fargate + ELB的使用(CDK) 一.ECS定义 Amazon Elastic Container Service (Amazon ECS)是一种高度可扩展的快速容器管理服 ...

  3. AWS — AWS ECS

    目录 文章目录 目录 Amazon Elastic Container Service Amazon ECS 的优势 无需管理控制平面或节点 降低计算成本 Amazon Elastic Contain ...

  4. aws ecs 理解元数据和mock本地测试环境

    资料 Under the Hood: Task Networking for Amazon ECS amazon-ecs-local-container-endpoints A Guide to Lo ...

  5. 创建AWS ECS Fargate

    简介 ECS-Elastic Container Service,一种完全托管的容器编排服务,功能与流行的kubernete(k8s)容器编排服务类似,在aws上使用k8s需要通过EKS或自己安装在E ...

  6. AWS ECS Fargate 集群创建

    在之前的AWS 相关课程中已经对使用ECS Fargate方式创建集群做了简单实验,但在之前的实验中只对AWS预先定义好的sample-app做了实验,这里补充一个完整的实验内容. --课程与题库整理 ...

  7. AWS ECS简单了解

    2019独角兽企业重金招聘Python工程师标准>>> ECS的介绍: elastic container service (ECS):是一个高度可扩展的快速容器管理服务,可以快速的 ...

  8. aws apigateway 使用httpapi私有集成ecs服务

    参考资料 https://docs.aws.amazon.com/zh_cn/apigateway/latest/developerguide/http-api-private-integration ...

  9. 【aws】ECS上构筑基于Concourse的CI/CD方案

    Amazon Elastic Container Service (Amazon ECS) 是一项高度可扩展的快速容器管理服务,它可轻松运行.停止和管理群集上的容器.您的容器在任务定义中定义,用于运行 ...

最新文章

  1. 那些年,面试被虐过的红黑树
  2. hadoop生态下hive安装过程
  3. 微信小程序 openid及支付的若干问题解决方案
  4. linux基本项目环境搭建
  5. sudo 命令报错的解决方法
  6. android今日头条刷新,仿今日头条刷新vector动画
  7. centos/linux 安装node.js
  8. 基于共享内存、信号、命名管道和Select模型实现聊天窗口
  9. Bootstrap里的Modal框
  10. 从AppCompat切换到MaterialComponents一些主题属性介绍
  11. 盘点40种常用的芯片封装技术
  12. 《神经网络与深度学习》基础篇
  13. 我的理想作文400字计算机,我的理想作文400字5篇
  14. tunel凋亡试剂盒说明书_QIA33 TUNEL显色法细胞凋亡检测试剂盒使用说明书_Merck
  15. 上海市社保和医保以及公积金转出到异地(注意事项)
  16. android EditText 设置弹出数字输入法键盘
  17. Dart语言(一)--基础语法
  18. 中关村创业大街是贵重金属垃圾场,我捡到一只产品经理
  19. 分区表与普通表之间切换的报错
  20. pytorch,torch,torchvision的gpu版本安装避坑

热门文章

  1. Android ADB工具-管理设备 app(二)
  2. 微信universal link
  3. 因果图法适用性分析举例
  4. IP冲突的本质是什么?
  5. 现在WEB前端团队协作一点见解
  6. Python—序列型数据操作实训
  7. 用自己的电脑搭建我的世界服务器教程,详细步骤
  8. 项目中XA Transaction应用
  9. 数据库设计说明书模板
  10. 硬件设计15---什么是HDMI驱动器?