我正在尝试在 mesos 中运行我的容器并将所有日志输出到 Cloudwatch。根据 Docker 文档,我应该将以下内容传递给“docker run”:
--log-driver=awslogs --log-opt awslogs-region=us-east-1 --log-opt awslogs-group=myLogGroup
(来自https://docs.docker.com/engine/admin/logging/awslogs/#awslogs-region)
到码头运行。为了使用 Marathon(或 Chronos,我假设?)来实现这一点,我应该将以下块添加到我的配置 json 文件中以执行我的任务
"parameters": [
{ "key": "hostname", "value": "a.corp.org" },
{ "key": "volumes-from", "value": "another-container" },
{ "key": "lxc-conf", "value": "..." }
]
https://mesosphere.github.io/marathon/docs/native-docker.html
看来此配置将以下内容附加到您的 docker run
--{key}={value}
由于我需要执行“--log-opt awslogs-region=us-east-1”形式的操作,因此我输入“key”:“log-opt awslogs-region”、“value”:“us-east” -1”,正确生成 docker run 命令,正如我从 mesos 中的 stderr 中看到的那样。但是,然后我收到一条错误消息
unknown flag: --log-opt awslogs-region
See 'docker run --help'.
直接在 mesos slave 上从 stderr 运行生成的 docker run 命令可以正常工作。