MongoDB容器Dockerfile没有可达的服务器

我试图构build一个简单的Dockerfile来将文件从当前目录复制到容器中,然后运行一个mongorestore命令来播种数据。 我看了很多不同的网站,我仍然收到以下错误。

2016-08-17T03:03:22.639 + 0000失败:错误连接到数据库服务器:无法访问服务器
命令'/ bin / sh -c mongorestore –drop / mongo-seed / mongo-seed-data / mongo-dump –host 127.0.0.1:27017'返回一个非零的代码:1

当我“猛击”容器并运行具有相同参数的mongorestore命令时,它会填充数据库。 我不知所措,请帮忙。

下面是Dockerfile

FROM mongo COPY . /mongo-seed EXPOSE 27017 CMD ["mongod"] RUN mongorestore --drop /mongo-seed/mongo-seed-data/mongo-dump --host 127.0.0.1:27017 

CMD在启动容器时运行。 所以当docker在构build镜像时执行dockerfile的最后一个RUN指令时, mongod没有运行。

 FROM mongo COPY . /mongo-seed # EXPOSE 27017 //not necessary, the mongo base image already has that instruction ENTRYPOINT mongod 

构build并运行: docker build -t foo . && docker run -d --name bar foo docker build -t foo . && docker run -d --name bar foo

执行mongorestore命令:

 docker exec bar mongorestore --drop ...