- 可以在多 Docker Beanstalk 中配置 X-Ray 吗?如果是,如何?
是的,但它不像在 AWS Elastic Beanstalk 上运行 X-Ray 守护程序中所述的可以通过 .ebextensions 启用的 X-Ray 守护程序那么简单。这在 Docker 平台上不起作用(没有重大的网络黑客攻击)。根据文章,
Elastic Beanstalk does not provide the X-Ray daemon on the Multicontainer Docker (Amazon ECS) platform
。此外,值得注意的是,在配置 AWS X-Ray 调试一文中支持的平台下都没有列出 Docker 平台。
对于Docker
平台 (Amazon Linux 2),您可以使用 docker-compose 在应用程序旁边的容器中运行 X 射线守护程序。这是docker-compose.yml
我在一个简单的 API 应用程序中使用的一个简单示例:
version: "3.9"
services:
api: # my app instrumented with the AWS X-Ray SDK
build:
context: .
dockerfile: Dockerfile-awseb
ports:
- "80:3000"
environment:
- AWS_XRAY_DAEMON_ADDRESS=xray:2000
env_file: .env
xray:
image: "amazon/aws-xray-daemon"
对于该Multicontainer
平台,检测Amazon ECS 应用程序一文中的 Scorekeep 示例展示了在 Elastic Beanstalk 中的多容器 Docker 环境中检测的更详细示例。
一些高级技巧...
使用受支持的平台时,您可能会在配置 AWS X-Ray 调试中找到更多指导。