【问题标题】:Get Docker application link into pm2获取 Docker 应用程序链接到 pm2
【发布时间】:2016-12-09 23:54:11
【问题描述】:

从我的twitterservice 连接到rabbitmq 时出现问题。当我在本地运行所有内容时,它运行良好。一旦我将它与 docker-compose 一起使用,twitterservice 似乎无法连接到 rabbit。最终产生错误:

在打开握手期间套接字突然关闭。

Mongo 部分可以正常工作。

我有我的docker-compose.yml 文件:

    version: '2'
services:
  twitterservice:
    build: ./workerTwitter
    links:
      - mongodb:mongolink
      - rabbitmq:rabbitlink
    ports:
      - "8080:8080"
    depends_on:
      - mongodb
      - rabbitmq
  mongodb:
    image: mongo:latest
    ports:
      - "27017:27017"
    volumes:
      - mongo-data:/var/lib/mongo
    command: mongod
  rabbitmq:
    image: rabbitmq:management
    ports:
      - '15672:15672'
volumes:
  mongo-data:
    driver: local

完美启动。

我的pm2 processes.json

    {
    "apps": [
        {
            "name": "twitter-service",
            "script": "./src",
            "merge_logs": true,
            "max_restarts": 40,
            "restart_delay": 10000,
            "instances": 1,
            "max_memory_restart": "200M",
            "env": {
                "PORT": 8080,
                "NODE_ENV": "production",
                "MONGO_DB": "mongodb://mongolink:27017/",
                "RABBIT_MQ": "amqp://rabbitlink:15672/",
            }
        }
    ]
}

当我的应用程序启动时,它没有连接到 Rabbit,因为它似乎缺少正确的链接 (IP)。我可以访问 Rabbit 管理控制台,可以看到现在创建了问题 如何从 processes.json 中访问生成的应用程序?

【问题讨论】:

    标签: docker rabbitmq pm2


    【解决方案1】:

    问题是应用程序在正确启动之前尝试连接到 rabbit,并且端口也错误。 5672 端口是正确的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-14
      • 2016-08-17
      相关资源
      最近更新 更多