将'Docker Run'选项传递给Mesos / Marathon / Chronos

我试图运行我的容器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 )

docker运行。 为了实现这个使用Marathon(或Chronos,我假设?),我应该添加下面的块到我的configurationjson文件为我的任务

  "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

看来,这个configuration将以下内容添加到您的docker运行

 --{key}={value} 

因为我需要做一些forms“–log-opt awslogs-region = us-east-1”,我把“key”:“log-opt awslogs-region”,“value”:“us-east -1“,正确地生成docker run命令,正如我从stderr中可以看到的那样。 但是,我然后得到一个错误说

 unknown flag: --log-opt awslogs-region See 'docker run --help'. 

从mesder slave直接运行生成的docker run命令可以正常工作。

Interesting Posts