Ich bin neu in Docker, und ich versuche die einfachste von Setups mit Docker-Compose, aber nicht erfolgreich mit Mongodb verbinden.Docker-komponieren mongoose
Meine Docker-compose.local.yaml Datei:
version: "2"
services:
posts-api:
build:
dockerfile: Dockerfile.local
context: ./
volumes:
- ".:/app"
ports:
- "6820:6820"
depends_on:
- mongodb
mongodb:
image: mongo:3.5
ports:
- "27018:27018"
command: mongod --port 27018
Meine Docker-Datei:
FROM node:7.8.0
MAINTAINER Livefeed '[email protected]'
RUN mkdir /app
VOLUME /app
WORKDIR /app
ADD package.json yarn.lock ./
RUN eval rm -rf node_modules && \
yarn
ADD server.js .
RUN mkdir config src
ADD config config/
ADD src src/
EXPOSE 6820
EXPOSE 27018
CMD yarn run local
In server.js versuche ich mit verbinden:
mongoose.connect('mongodb://localhost:27018');
I auch versucht:
Um Docker-compose laufen:
docker-compose -f docker-compose.local.yaml up --build
Und ich erhalte den Fehler:
connection error: { MongoError: failed to connect to server [localhost:27018] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27018]
Was bin ich?
@Tamas, ja, ich habe dies getan, in meinem Docker.local .yaml Datei, ich werde es der Beschreibung hinzufügen – Trace
Entschuldigung, ich meinte, Dienste: mongo: Bild: 'Mongo: 3,5' Ports: '27018: 27017'. – Tamas
@Tamas Ich möchte am Port 27018 laufen, weil ich eine andere Mongo-Instanz pro Microservice laufen lassen möchte – Trace