
amazon/amazon-ecs-agentAmazon Elastic Container Service (ECS) Agent 是 Amazon ECS 的核心组件,用于在 Amazon EC2 实例上协调和管理容器的生命周期。该镜像作为 EC2 实例与 ECS 服务之间的通信桥梁,负责接收 ECS 服务的任务定义、启动/停止容器、监控容器状态并上报实例和任务信息。
注意:此镜像仅支持在 Amazon EC2 实例上运行。在 EC2 外部环境中运行不受支持,可能因依赖 EC2 元数据服务等原因无法正常工作。
/var/run/docker.sock)与主机 Docker 守护进程通信,实现容器生命周期管理。latest:始终指向最新稳定版本的 Agent。vX.Y.Z(如 v1.1.0),对应特定发布版本,用于版本锁定。推荐通过以下命令启动 ECS Agent,关键配置包括挂载 Docker 套接字、日志目录、数据目录,以及设置必要环境变量:
bashdocker run --name ecs-agent -d \ -v /var/run/docker.sock:/var/run/docker.sock \ # 挂载 Docker 套接字,实现与 Docker 守护进程通信 -v /var/log/ecs/:/log \ # 挂载日志目录,持久化 Agent 日志 -v /var/lib/ecs/data:/data \ # 挂载数据目录,存储 Agent 运行数据 -p 127.0.0.1:51678:51678 \ # 本地端口映射,Agent 内部端口 51678 -e ECS_LOGFILE=/log/ecs-agent.log \ # 指定日志文件路径 -e ECS_LOGLEVEL=info \ # 设置日志级别(info/warn/debug等) -e ECS_DATADIR=/data \ # 指定数据存储目录 amazon/amazon-ecs-agent:latest
创建 docker-compose.yml 文件,内容如下:
yamlversion: '3' services: ecs-agent: image: amazon/amazon-ecs-agent:latest container_name: ecs-agent restart: always volumes: - /var/run/docker.sock:/var/run/docker.sock - /var/log/ecs/:/log - /var/lib/ecs/data:/data ports: - "127.0.0.1:51678:51678" environment: - ECS_LOGFILE=/log/ecs-agent.log - ECS_LOGLEVEL=info - ECS_DATADIR=/data
启动命令:docker-compose up -d
| 主机路径 | 容器路径 | 用途 |
|---|---|---|
/var/run/docker.sock | /var/run/docker.sock | 允许 Agent 与主机 Docker 守护进程通信 |
/var/log/ecs/ | /log | 存储 Agent 日志文件 |
/var/lib/ecs/data | /data | 存储 Agent 运行数据(如任务状态等) |
127.0.0.1:51678:51678:将容器内 51678 端口映射到主机本地回环地址的 51678 端口,用于 Agent 内部通信。ECS Agent 支持通过环境变量自定义行为,完整列表可参考 Agent GitHub 页面。常用环境变量说明:
| 环境变量 | 描述 | 默认值示例 |
|---|---|---|
ECS_LOGFILE | 日志文件路径 | /log/ecs-agent.log |
ECS_LOGLEVEL | 日志级别(可选:debug/info/warn/error) | info |
ECS_DATADIR | 数据存储目录 | /data |
ECS_CLUSTER | 指定 ECS 集群名称(若未指定,默认加入 default 集群) | default |
ECS_ENGINE_AUTH_TYPE | 容器镜像仓库认证类型(如 docker 表示 Docker 镜像仓库) | - |
需遵循 ECS 官方文档 中的更新步骤。
通过以下命令更新至最新版本:
bash# 停止并删除现有 Agent 容器 docker stop ecs-agent docker rm ecs-agent # 拉取最新镜像 docker pull amazon/amazon-ecs-agent:latest # 重新启动 Agent(使用 5.2 节中的 docker run 命令) docker run --name ecs-agent -d ... amazon/amazon-ecs-agent:latest
Agent 源代码托管于 GitHub:[***]
如遇使用问题,可在 GitHub Issues 页面提交:[***]



manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务