[英]Unable to connect to mongodb using URL using monstache
我一直試圖將我的 mongodb 與彈性同步兩天,我快瘋了。 在我的 dockerfile 和我的 docker-compose 中進行了多次嘗試和更改后,我收到此錯誤,但帶有 mongodb 的容器已啟動並正在運行。
monstache | ERROR 2018/07/27 17:59:07 Unable to connect to mongodb using URL 'mongodb:27018': no reachable servers
monstache | panic: Unable to connect to mongodb using URL 'mongodb:27018': no reachable servers
monstache |
monstache | goroutine 1 [running]:
monstache | log.(*Logger).Panicf(0xc420020c30, 0xd4fc15, 0x2d, 0xc42006fc18, 0x2, 0x2)
monstache | /usr/local/go/src/log/log.go:219 +0xdb
monstache | main.main()
monstache | /home/vagrant/go/src/github.com/rwynn/monstache/monstache.go:2400 +0x320
monstache exited with code 2
這是我的 dockerfile
FROM golang
ADD build-4.4.0/linux-amd64/monstache /go/bin/monstache
ENTRYPOINT ["monstache", "-mongo-url='mongodb:27018'", "-elasticsearch-url=elasticsearch:9200"]
這是我的 docker-compose 文件
version: '3.3'
services:
mongodb:
image: mongo
restart: always
container_name: mongodb
volumes:
- ./data/mongodb:/usr/share/mongodb/data
ports:
- 27018:27017
elasticsearch:
image: elasticsearch
restart: always
container_name: elasticsearch
volumes:
- ./data/elastic:/usr/share/elasticsearch/data
ports:
- 9200:9200
monstache:
build: ./monstache/
restart: always
container_name: monstache
links:
- elasticsearch
- mongodb
任何的想法?
謝謝!
最后,我們不再使用 monstache,我們在 python dockerfile 中使用mongo-connector將數據從 mongodb 共享到 elasticsearch。
FROM python:3.4.3
RUN pip install 'mongo-connector[elastic5]' && \
pip install 'elastic2-doc-manager[elastic5]'
我希望這可以幫助某人。
您必須將 'mongo-url' 更改為-mongo-url='mongodb:27017'
,因為您的所有容器都在 docker 網絡中運行,並且 mongodb 在端口27017
上可用,因為這是公開端口。
撰寫文件中的以下塊還將使 mongodb 在您的主機網絡上的端口27018
上可用,但可以通過本地機器環境中的瀏覽器訪問,而不是在 docker 網絡中。
ports: - 27018:27017
這個撰寫文件也應該在沒有鏈接的情況下工作。
version: '3.3' services: mongodb: image: mongo restart: always container_name: mongodb volumes: - ./data/mongodb:/usr/share/mongodb/data ports: - 27018:27017 elasticsearch: image: elasticsearch restart: always container_name: elasticsearch volumes: - ./data/elastic:/usr/share/elasticsearch/data ports: - 9200:9200 monstache: build: ./monstache/ restart: always container_name: monstache
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.