Mongodb 节点应用程序无法连接到我的ubuntu实例上的mongo映像
Mongodb 节点应用程序无法连接到我的ubuntu实例上的mongo映像,mongodb,docker,ubuntu,docker-compose,keystonejs,Mongodb,Docker,Ubuntu,Docker Compose,Keystonejs,MongoServer选择错误:getaddrinfo ENOTFOUND mongo 是我尝试运行docker compose build时遇到的错误 这是我的docker-compse.yml文件 version: '3' services: app: container_name: node-app build: . ports: - "3000:3000" restart: always volumes:
MongoServer选择错误:getaddrinfo ENOTFOUND mongo
是我尝试运行docker compose build时遇到的错误
这是我的docker-compse.yml文件
version: '3'
services:
app:
container_name: node-app
build: .
ports:
- "3000:3000"
restart: always
volumes:
- ./uploads:/app/uploads
links:
- mongo
mongo:
container_name: mongo
image: mongo
volumes:
- ./data:/data/db
ports:
- "27017:27017"
command: mongod
还有我的Dockerfile
# https://docs.docker.com/samples/library/node/
ARG NODE_VERSION=12.10.0
# https://github.com/Yelp/dumb-init/releases
ARG DUMB_INIT_VERSION=1.2.2
# Build container
FROM node:${NODE_VERSION}-alpine AS build
ARG DUMB_INIT_VERSION
WORKDIR /home/node
RUN apk add --no-cache build-base python2 yarn && \
wget -O dumb-init -q https://github.com/Yelp/dumb-init/releases/download/v${DUMB_INIT_VERSION}/dumb-init_${DUMB_INIT_VERSION}_amd64 && \
chmod +x dumb-init
ADD . /home/node
RUN yarn install && yarn build && yarn cache clean
# Runtime container
FROM node:${NODE_VERSION}-alpine
WORKDIR /home/node
COPY --from=build /home/node /home/node
EXPOSE 3000
CMD ["./dumb-init", "yarn", "start"]
代码中的连接字符串是
mongodb://mongo:27017/{db_name}
当我运行
docker ps-a
时,我可以清楚地看到我的mongo图像在那里。我在谷歌上搜索了这个问题,并尝试了荒谬的连接字符串组合来尝试连接mongo,但有人有任何补充信息或调试建议来克服这个问题吗?问题很可能是您在启动mongod时没有传递--bind\u ip\u all
参数。默认情况下,mongod仅绑定到127.0.0.1,如前所述您说过您在构建过程中遇到了这个问题?Dockerfile中的代码永远无法连接到其他容器;取决于数据库的任何步骤都需要在容器启动时进行。