当mongo关闭了日志系统时,若是发生了意外退出,那么就会再数据目录产生一个mongod.lock文件,该文件会阻止mongo启动。须要先对数据修复mongo --repaire
,才能启动。docker
那么当咱们使用docker mongo时,若是遭遇了意外退出后没法启动容器该怎么处理呢?日志
1)作了数据卷映射,即咱们能够再宿主主机获取到mongo的数据目录code
那样咱们就能够使用宿主主机中的mongod的命令来修复数据mongod --dbpath xxx --repaire
,修复后数据目录下mongod.lock文件消失,既能够正常启动docker mongo了容器
2)没有作数据卷映射,能够找到容器的自己的数据存放目录方法
经过docker inspect 很容找到volume在哪里,这里存放的就是容器中mongo的数据,而后使用上面的方法进行修复,而后启动就ok了数据
3)若是不在意容器数据完整行,那么进入到1)和2)目录下直接把mongod.lock文件删除便可db