docker中的mongodump不会创建任何文件

时间:2016-10-11 10:09:46

标签: mongodb docker

我正在使用docker来托管mongo数据库,现在我正在尝试转储整个数据库。一切都工作正常,除了没有创建文件。完全没有错误。 这就是我试过的:

docker exec -ti mongodb mongodump --out /backup --host localhost -u admin -p admin

我正在使用DockerHub中的tutum/mongodb图片。 执行该命令后,这是完整日志:http://pastebin.com/SXCqv16v

编辑: 输出docker inspect mongodbhttp://pastebin.com/5sdheAwK

我的docker-compose.yml文件:http://pastebin.com/JmfKbtdJ

2 个答案:

答案 0 :(得分:0)

我相信您只需要将/ backup目录映射到docker主机上的卷。将您的docker compose mongodb条目更改为(用主机上的相应文件夹替换/ hostbackupdir)

mongodb:
  image: tutum/mongodb
  environment:
    - MONGODB_PASS=admin
    - MONGODB_USER=admin
  container_name: mongodb
  volumes:
    - /hostbackupdir:/backup

注意:将/ data / db目录映射到主机上的目录也可能不错。这将是(使用主机上相应的文件夹替换/ hostbackupdir和/ hostdatadir):

mongodb:
  image: tutum/mongodb
  environment:
    - MONGODB_PASS=admin
    - MONGODB_USER=admin
  container_name: mongodb
  volumes:
    - /hostbackupdir:/backup
    - /hostdatadir:/data/db

答案 1 :(得分:0)

这就是我解决它的方式。问题在于将主机文件夹与容器文件夹绑定:

mongodb:
  image: tutum/mongodb
  environment:
    - MONGODB_PASS=admin
    - MONGODB_USER=admin
  container_name: mongodb
  volumes:
    - ../backup:/backup