我正在尝试使用docker-compose连接在docker上运行的两个mongodb容器.一个容器使用mongoimport将一些数据播种到另一个容器.
但是,运行mongoimport时出现以下错误
Failed: error connecting to db server: no reachable servers
@H_404_9@
我实际上可以从mongo-seed到达mongodb容器,因为我将ping -c 3 mongodb附加到CMD,容器可以成功解析该主机名.
在我正在使用的文件下面:
泊坞窗,compose.yml
version: '2'
services:
mongodb:
image: mongo:3.2
ports:
- "27017:27017"
mongo-seed:
build: ./mongo-seed
@H_404_9@
蒙戈种子/ Dockerfile
FROM mongo:3.2
COPY init.json /init.json
CMD ping -c 3 mongodb && mongoimport --host mongodb --db test --collection users \
--type json --file /init.json --jsonArray
@H_404_9@
蒙戈种子/ init.json
[
{
"name": "Joe Smith","email": "jsmith@gmail.com","age": 40,"admin": false
},{
"name": "Jen Ford","email": "jford@gmail.com","age": 45,"admin": true
}
]
@H_404_9@
这就是docker-output的输出:
mongo-seed_1 | PING mongodb (172.18.0.2): 48 data bytes
mongo-seed_1 | 56 bytes from 172.18.0.2: icmp_seq=0 ttl=64 time=0.116 ms
mongo-seed_1 | 56 bytes from 172.18.0.2: icmp_seq=1 ttl=64 time=0.141 ms
mongo-seed_1 | 56 bytes from 172.18.0.2: icmp_seq=2 ttl=64 time=0.114 ms
mongo-seed_1 | --- mongodb ping statistics ---
mongo-seed_1 | 3 packets transmitted,3 packets received,0% packet loss
mongo-seed_1 | round-trip min/avg/max/stddev = 0.114/0.124/0.141/0.000 ms
mongo-seed_1 | 2016-08-09T20:34:15.728+0000 [........................] smtt.devices 0.0 B/25.5 MB (0.0%)
mongo-seed_1 | 2016-08-09T20:34:17.992+0000 [........................] smtt.devices 0.0 B/25.5 MB (0.0%)
mongo-seed_1 | 2016-08-09T20:34:17.992+0000 Failed: error connecting to db server: no reachable servers
mongo-seed_1 | 2016-08-09T20:34:17.992+0000 imported 0 documents
mongo_mongo-seed_1 exited with code 1
@H_404_9@
任何的想法?我错过了什么?