【发布时间】:2016-06-24 17:42:05
【问题描述】:
有没有一种简单的方法可以清除 docker 中运行的 mongodb 数据库?
或者可能将其全部删除并重新创建?
【问题讨论】:
-
你不能删除容器并重新创建另一个容器吗?
-
供参考,
docker container ls --all然后docker container rm <id>,然后重新构建
有没有一种简单的方法可以清除 docker 中运行的 mongodb 数据库?
或者可能将其全部删除并重新创建?
【问题讨论】:
docker container ls --all 然后docker container rm <id>,然后重新构建
有很多方法:
关于最后一个选项,您不应该处于这种情况,因为您的数据应该存在于主机系统上,而您的容器应该是一次性的。
【讨论】:
docker exec -it mongodb_container bash -c "mongo db-name --eval 'db.dropDatabase()'"
【讨论】:
我有一个要求略有不同的案例:
docker-composeMONGO_USER & MONGO_PASSWORD)所以,对于任何可能需要一个方便的单线来验证和删除带有 docker 的 mongo db 的人,这里是?:
docker-compose exec mongo_container_name /bin/bash -c 'mongo database_name -u $MONGO_USER -p $MONGO_PASSWORD --authenticationDatabase admin --eval "db.dropDatabase();"'
如果你将Makefile 添加到“混合”中,它完全一样,但它需要$$ 到变量:
db-reset:
docker-compose exec mongo_container_name /bin/bash -c 'mongo database_name -u $$MONGO_USER -p $$MONGO_PASSWORD --authenticationDatabase admin --eval "db.dropDatabase();"'
【讨论】: