如何使用docker-compose连接到mongodb?

泊坞窗,compose.yml

mongo: image: tutum/mongodb environment: - AUTH=no volumes: - /Users/andrey/docker/mongodb:/mongo/db ports: - "27017:27017" parser: image: nazandr/goparser 

和Dockerfile goparser

 FROM golang:1.8 WORKDIR /app ADD parser.go /app/ RUN go get github.com/PuerkitoBio/goquery; go get gopkg.in/mgo.v2; go build -o parser ENTRYPOINT ["./parser"] 

需要用什么地址连接mongo

你可以做如下的事情:

 version: '3' services: mongo: image: 'mongo:3.4.1' ports: - '27017:27017' volumes: - 'mongo:/data/db' puma: tty: true stdin_open: true depends_on: - 'mongo' build: context: . dockerfile: Dockerfile.puma command: bundle exec rails s -p 3000 -b '0.0.0.0' ports: - '3000:3000' volumes: - '.:/app' environment: - SECRET_KEY_BASE=secret - MONGO_URL=mongodb://mongo:27017/app_development volumes: mongo: 

您可能已经注意到,您可以使用连接string(如mongodb://mongo:27017连接到位于同一个docker-compose.yml文件中的其他容器上运行mongo容器的mongo服务。

如果你想从主机连接,你可以使用mongodb://localhost:27017如果你已经暴露了mongo端口,如上所示。