分析 Amazon ECS 应用程序 - Amazon X-Ray
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

分析 Amazon ECS 应用程序

xray-ecs分支中,Scorekeep 示例应用程序展示如何分析在 Amazon EElastic Container Service (Amazon ECS) 中运行的应用程序。分支提供脚本和配置文件,用于在 Amazon Elastic Beanstalk 的多容器 Docker 环境中创建、上传和运行 Docker 映像。

该项目包括三个 Dockerfile,用于为 API、前端和 X-Ray 守护程序组件定义容器映像。

  • /Dockerfile— Scoreate API。

  • /scorekeep-frontend/Dockerfile— Angular Web 应用程序客户端,以及路由传入流量的 nginx 代理。

  • /xray-daemon/Dockerfile— X-Ray 守护程序。

X-Ray 守护程序 Dockerfile 根据运行 X-Ray 守护程序的 Amazon Linux 创建映像。在 Docker Hub 上下载完整的示例映像

例 Dockerfile — Amazon Linux

FROM amazonlinux RUN yum install -y unzip RUN curl -o daemon.zip https://s3.us-east-2.amazonaws.com/aws-xray-assets.us-east-2/xray-daemon/aws-xray-daemon-linux-3.x.zip RUN unzip daemon.zip && cp xray /usr/bin/xray ENTRYPOINT ["/usr/bin/xray", "-t", "0.0.0.0:2000", "-b", "0.0.0.0:2000"] EXPOSE 2000/udp EXPOSE 2000/tcp

同一目录中的 makefile 定义用于构建映像、上传到 Amazon ECR 的命令,以及在本地运行

要在 Amazon ECS 上运行容器,分支中需要包括生成Dockerrun.aws.json文件,您可以将该文件部署到 Elastic Beanstalk 中的多容器 Docker 环境。这些区域有:模板脚本使用的演示如何编写任务定义,以配置亚马逊云服务器中的容器之间的网络连接

注意

Dockerrun.aws.jsonAmazon ECS 任务定义文件的 Elastic Beanstalk 版本。如果您不想使用 Elastic Beanstalk 创建 Amazon ECS 集群,可以修改Dockerrun.aws.json文件直接在亚马逊云服务器上运行,方法是删除AWSEBDockerrunVersion键。

请参阅分支自述文件了解如何将 Score'm 部署到 Amazon ECS 的说明。