首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >马拉松命令运行停靠-组合错误

马拉松命令运行停靠-组合错误
EN

Stack Overflow用户
提问于 2016-10-13 10:22:03
回答 1查看 981关注 0票数 0

我在马拉松上有个问题。有两种情况

  1. 在Ubuntu命令接口中运行docker-compose-up -d。 它成功地运行和部署应用程序。
  2. 在马拉松Json文件中运行docker-compose-up -d {“id”:“/piggy ","cmd":"cd /home/ubuntu/spring-demo 2& sudo docker-compose up -d”,“cpu”:1,"mem":4200,"disk":0,"acceptedResourceRoles":"slave_public“,"portDefinitions":{ "port":10000,"protocol":"tcp",“标签”:{}}

然后,它就不能部署,马拉松总是改变周围的状态等待,延迟和运行。当我触摸服务器中的sudo ps -a时,似乎容器会不断地重新启动。

在梅索斯,同样的任务完成了很多次。

这是compose.yml文件。

代码语言:javascript
复制
version: '2'
services:
  rabbitmq:
    image: rabbitmq:3-management
    restart: always
    ports:
      - 15672:15672
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  config:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
    image: sqshq/piggymetrics-config
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  registry:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
    image: sqshq/piggymetrics-registry
    restart: always
    ports:
      - 8761:8761
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  gateway:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
    image: sqshq/piggymetrics-gateway
    restart: always
    ports:
      - 80:4000
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  auth-service:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
      NOTIFICATION_SERVICE_PASSWORD: $NOTIFICATION_SERVICE_PASSWORD
      STATISTICS_SERVICE_PASSWORD: $STATISTICS_SERVICE_PASSWORD
      ACCOUNT_SERVICE_PASSWORD: $ACCOUNT_SERVICE_PASSWORD
      MONGODB_PASSWORD: $MONGODB_PASSWORD
    image: sqshq/piggymetrics-auth-service
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  auth-mongodb:
    environment:
      MONGODB_PASSWORD: $MONGODB_PASSWORD
    image: sqshq/piggymetrics-mongodb
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  account-service:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
      ACCOUNT_SERVICE_PASSWORD: $ACCOUNT_SERVICE_PASSWORD
      MONGODB_PASSWORD: $MONGODB_PASSWORD
    image: sqshq/piggymetrics-account-service
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  account-mongodb:
    environment:
      INIT_DUMP: account-service-dump.js
      MONGODB_PASSWORD: $MONGODB_PASSWORD
    image: sqshq/piggymetrics-mongodb
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  statistics-service:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
      MONGODB_PASSWORD: $MONGODB_PASSWORD
      STATISTICS_SERVICE_PASSWORD: $STATISTICS_SERVICE_PASSWORD
    image: sqshq/piggymetrics-statistics-service
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  statistics-mongodb:
    environment:
      MONGODB_PASSWORD: $MONGODB_PASSWORD
    image: sqshq/piggymetrics-mongodb
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  notification-service:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
      MONGODB_PASSWORD: $MONGODB_PASSWORD
      NOTIFICATION_SERVICE_PASSWORD: $NOTIFICATION_SERVICE_PASSWORD
    image: sqshq/piggymetrics-notification-service
    restart: always
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  notification-mongodb:
    image: sqshq/piggymetrics-mongodb
    restart: always
    environment:
      MONGODB_PASSWORD: $MONGODB_PASSWORD
    logging:
      options:
        max-size: "10m"
        max-file: "10"

  monitoring:
    environment:
      CONFIG_SERVICE_PASSWORD: $CONFIG_SERVICE_PASSWORD
    image: sqshq/piggymetrics-monitoring
    restart: always
    ports:
      - 9000:8080
      - 8989:8989
    logging:
      options:
        max-size: "10m"
        max-file: "10"
EN

回答 1

Stack Overflow用户

发布于 2016-10-14 08:20:32

要运行在马拉松上使用docker设置的应用程序组,您应该将每个服务转换为马拉松应用程序。在马拉松应用程序中,compose.yaml的每一份文件都有其相应的内容。

示例允许假设我们希望运行一些名为piggy的大型应用程序,该应用程序是从许多较小的服务构建的。一个服务被定义为

代码语言:javascript
复制
  rabbitmq:
    image: rabbitmq:3-management
    restart: always
    ports:
      - 15672:15672
    logging:
      options:
        max-size: "10m"
        max-file: "10"

会导致

代码语言:javascript
复制
{
  "id":"piggy/rabbitmq",
  "container":{
    "docker":{
      "image":"rabbitmq:3-management",
      "network":"BRIDGE",
      "portMappings":[{
          "containerPort":8761,
          "hostPort":0
      }],
      "parameters":[
        {
          "key":"max-size",
          "value":"10,"
        },
        {
          "key":"max-file",
          "value":"10"
        }
      ]
    },
    "type":"DOCKER"
  },
  "cpus":1.0,
  "mem":512.0,
  "instances":1
}

对于在compose.yaml中定义的每个服务,都需要重复此过程。准备好的JSON应该是POST /v2/apps或者分组在马拉松群中。

如果你仔细看一看,你会发现它不是1比1的翻译。在compose.yaml中,没有定义资源cpus/mem。另一个不同之处在于它的端口映射。当您在Mesos上运行服务时,不应该静态地分配端口。这就是为什么主机端口被设置为0,因此将分配随机端口。另一件重要的事情是健康检查。您应该为应用程序定义健康检查。最后是卷。当在Mesos上运行服务并要求文件持久存在时,您应该调查持久卷

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40018333

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档