MongoDB容器Dockerfile无法访问服务器
我试图构建一个简单的Dockerfile,将文件从当前目录复制到容器中,然后运行mongorestore命令来为数据种子。我看了很多不同的网站,仍然发现以下错误 2016-08-17T03:03:22.639+0000失败:连接到数据库服务器时出错:无法访问服务器MongoDB容器Dockerfile无法访问服务器,mongodb,docker,dockerfile,Mongodb,Docker,Dockerfile,我试图构建一个简单的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 当我“bash”到容器中并使
命令“/bin/sh-c mongorestore--drop/mongo seed/mongo seed data/mongo dump--host 127.0.0.1:27017”返回一个非零代码:1 当我“bash”到容器中并使用相同的参数运行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在构建映像时执行dockerfile的最后一条RUN
指令时,mongod
未运行
FROM mongo
COPY . /mongo-seed
# EXPOSE 27017 //not necessary, the mongo base image already has that instruction
ENTRYPOINT mongod
构建和运行:docker构建-t foo.&docker run-d——名称栏foo
执行mongorestore
命令:
docker exec bar mongorestore --drop ...
CMD
在启动容器时运行。
因此,docker在构建映像时执行dockerfile的最后一条RUN
指令时,mongod
未运行
FROM mongo
COPY . /mongo-seed
# EXPOSE 27017 //not necessary, the mongo base image already has that instruction
ENTRYPOINT mongod
构建和运行:docker构建-t foo.&docker run-d——名称栏foo
执行mongorestore
命令:
docker exec bar mongorestore --drop ...
一切如期进行。需要使用mongorestore而不是mongorestore。我仍在学习CMD、ENTRYPOINT、RUN等的不同用法。对不起,这是我的输入错误:)一切正常。需要使用mongorestore而不是mongorestore。我还在学习CMD、ENTRYPOINT、RUN等的不同用法。对不起,这是我的错:)