我们正在尝试创建自己的DCOS软件包来安装我们的应用程序,我们创建了自己的Universe并在S3中托管它,我们为DCOS软件包创建了所有必需的文件(config.json,package.json,marathon.json .mustache)并正确创建索引,称为Atest。
我们的marathon.json是一组应用程序的马拉松描述符:
{
"id" : "/{{Atest.id}}",
"groups":
[
{
"id": "{{Atest.apps-id}}",
"apps" :
[
{
"id" : "{{Atest.app-master-id}}",
.......
},
{
"id" : "{{Atest.app-slave-id}}",
.......
},
]
}
]
}
当我们通过marathon api部署应用程序时,它运行正常,但是当我们尝试运行DCOS软件包安装Atest时,它会失败,如果我只更换了json,只安装了主应用程序它没有问题。
所以DCOS包安装custom-package只能安装马拉松应用程序?或者有没有办法安装马拉松组作为DCOS包?
答案 0 :(得分:1)
是的,dcos package install custom-package
只能安装马拉松应用。 DCOS没有接受马拉松组json的支持。
Marathon支持从同一个json启动多个应用程序,它从REST API汇总到/ v2 / groups端点。 (Is it a way to add arbitrary record to kube-dns?)。
但是,Cosmos(DC / OS程序包管理器 - https://mesosphere.github.io/marathon/docs/rest-api.html#post-v2-groups)不接受相同的请求,因为它只接受对/ v2 / apps端点(https://github.com/dcos/cosmos/)的请求一个应用程序。