简体   繁体   English

docker-compose与容器mongo ECONNREFUSED

[英]docker-compose with container mongo ECONNREFUSED

I m new at docker so i tried to connect multiple container - mongo - my app - redis and i get this error in chrome=> code: "ECONNREFUSED", errno: "ECONNREFUSED", syscall: "connect", address: "127.0.0.1", port: 8080} 我是Docker的新手,所以我尝试连接多个容器-mongo-我的应用程序-redis,我在chrome => code: "ECONNREFUSED", errno: "ECONNREFUSED", syscall: "connect", address: "127.0.0.1", port: 8080}收到此错误code: "ECONNREFUSED", errno: "ECONNREFUSED", syscall: "connect", address: "127.0.0.1", port: 8080}

here is my docker-compose file : 这是我的docker-compose文件:

version: "2"

services:
  mongo:
    image: "mongo"
    restart: always
    ports:
      - "27017:27017"
    networks:
     -  all
  redis:
    image: "redis:3.2.1"
    networks:
     -  all
  node:
    image: "project"
    links:
      - mongo
    ports:
      - "8080:8080"
    networks:
     -  all
  backoffice:
    image: "back"
    links:
      - node
      - mongo
      - redis
    depends_on:
      - mongo
      - node
      - redis
    ports:
      - "8181:8181"
    networks:
     -  all

networks:
  all:
    driver: bridge

my differents Dockerfile: 我与众不同的Dockerfile:

for mongo: 对于mongo:

FROM mongo:2.6 来自mongo:2.6

COPY ./data ./ COPY ./data ./

EXPOSE 27017 展览27017

CMD ["mongod"] CMD [“ mongod”]

for service node: 对于服务节点:

FROM node:4.4.7 从节点:4.4.7

WORKDIR /app WORKDIR / app

COPY /api ./ COPY / api ./

RUN npm install 运行npm安装

RUN apt-get -q update && apt-get install -y -qq \\ git \\ curl 运行apt-get -q更新&& apt-get安装-y -qq \\ git \\ curl

EXPOSE 8080 展览8080

CMD ["node","index.js"] CMD [“ node”,“ index.js”]

for service back: 服务回馈:

FROM node:4.4.7 从节点:4.4.7

WORKDIR /api WORKDIR / api

COPY . 复制。 ./ ./

RUN npm install && npm install bower -g && npm install gulp -g 运行npm install && npm install bower -g && npm install gulp -g

RUN bower install --allow-root && gulp build 运行bower install --allow-root && gulp构建

RUN apt-get -q update && apt-get install -y -qq \\ git \\ curl 运行apt-get -q更新&& apt-get安装-y -qq \\ git \\ curl

EXPOSE 8181 展览8181

CMD ["node","index.js"] CMD [“ node”,“ index.js”]

can you please help me figure this out ? 你能帮我解决这个问题吗?

Probably your port 8080 is already in use. 您的端口8080可能已在使用中。 Open your cmd and type netstat -a. 打开您的cmd并键入netstat -a。 This is for checking the ports availability. 这用于检查端口可用性。

我解决了我的问题,我正在使用docker-compose的版本2,但是链接仅在版本3中可用。只需升级即可,并且效果很好。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM