简体   繁体   English

docker内部的mongodump不会创建任何文件

[英]mongodump inside docker doesn't create any files

I'm using docker to host mongo database and now I'm trying to dump the whole database. 我正在使用docker托管mongo数据库,现在正在尝试转储整个数据库。 Everything is working fine, except no files are created. 一切正常,除了没有创建文件。 No errors at all. 完全没有错误。 This is what I tried: 这是我尝试的:

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

I'm using tutum/mongodb image from DockerHub. 我正在使用来自DockerHub的tutum/mongodb映像。 This is full log after execution of that command: http://pastebin.com/SXCqv16v 执行该命令后,这是完整的日志: http : //pastebin.com/SXCqv16v

EDIT: output of docker inspect mongodb : http://pastebin.com/5sdheAwK 编辑: docker inspect mongodb输出: http : //pastebin.com/5sdheAwK

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

I believe you just need to map the /backup directory to a volume on the docker host. 我相信您只需要将/ backup目录映射到Docker主机上的卷即可。 Change your docker compose mongodb entry to (replace /hostbackupdir with the appropriate folder on the host) 将您的docker compose mongodb条目更改为(用主机上的相应文件夹替换/ hostbackupdir)

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

Note: it's probably not a bad idea to also map your /data/db directory to one on your host too. 注意:将/ data / db目录也映射到主机上的一个目录可能不是一个坏主意。 that would be something like (replace /hostbackupdir and /hostdatadir with the appropriate folders on the host): 就像(用主机上的相应文件夹替换/ hostbackupdir和/ hostdatadir):

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

This is how I solved it. 这就是我解决的方法。 The problem was in binding the host folder with container folder: 问题在于将主机文件夹与容器文件夹绑定在一起:

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM