如何使用Apache Marathon REST API扩展Docker实例?

是否可以使用Mesosphere Marathon REST API来扩展和减lessDocker容器/实例的数量

端点GET /deployments似乎只能看到下一个可能的操作。 如何使用REST API扩展实例(编程方式:可能使用curl脚本而不使用Marathon Web界面)?

您应该使用带有JSON的PUT,只将字段"instances"与期望的实例计数(例如2)和应用程序ID(例如/foo )一起使用。

 PUT <marathon-url>/v2/apps/foo { "id": "/foo", "instances": 2 } 

注: 马拉松1.4弃用PUT语义。

PUT on / v2 / apps有一个类似于语义的PATCH:在json中没有定义的所有值都不会更新现有的值。 这一直是Marathon版本的默认行为。 为了向后兼容,我们不会改变这种行为,但让用户select适当的PUT。 马拉松的下一个版本将使用PATCH和PUT作为两个独立的动作。