docker-compose节点应用程序无法连接互联网

时间:2017-06-03 09:24:40

标签: node.js proxy dns docker-compose docker-network

我遇到了docker-compose容器的问题。肯定有答案,但似乎我没有必要的词汇来找到它,抱歉。

这是我的docker-compose文件:

version: '2'

services:
    gateway-linkcs:
        image: node:7
        ports:
          - 3000:3000
        volumes:
          - ../Gateway:/usr/src/app
        working_dir: /usr/src/app
        command: yarn startdev
        networks:
          - back-linkcs
    postgres-user-linkcs:
        build:
            context: ../User
            dockerfile: docker/Dockerfile
        networks:
          - back-linkcs
    dev-user-linkcs:
        image: node:7
        ports:
          - 3001:3001
        volumes_from:
          - postgres-user-linkcs
        volumes:
          - ../User:/usr/src/app
        working_dir: /usr/src/app
        command: /usr/src/app/docker/scripts/start-node.sh
        environment:
          - NODE_ENV=development # change to 'production' for prod
          - GATEWAY_ADDRESS=gateway-linkcs:3000
        networks:
          - back-linkcs

networks:
    back-linkcs:

我在dev-user中的节点应用程序假设使用网关作为代理来连接互联网上的api,dev-user实际上找到了网关,并且能够连接到它(使用主机名'gateway-linkcs') 但是,我的网关应用无法连接到外部API:

Error: getaddrinfo ENOTFOUND api.xxx api.xxx:80
     at errnoException (dns.js:28:10)
     at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:73:26)

我测试了在docker之外启动网关,(node index.js),它运行得非常好。

我认为我遗漏了一些码头构成网络的东西,有人可以帮忙吗?

非常感谢,Giltho。

0 个答案:

没有答案