MongoDB docker 容器“无法取消链接套接字文件”

sha*_*rif 5 mongodb docker digital-ocean

我将 MongoDB 作为docker 容器,当我重新启动服务器并尝试启动容器时,它会永远重新启动。

我得到的容器日志如下

在此输入图像描述

主要问题是 Failed to unlink socket file /tmp/mongodb-27017.sock Operation not permitted

我找到了这个问题的许多解决方案,但所有这些解决方案都基于我正在使用 mongod 服务的想法,这不是我的情况。

我正在使用 docker 容器,在该容器运行之前我无法在此容器上运行命令。遗憾的是,此错误不会让容器启动并不断重新启动。

我从 MongoDB 3.6 版本开始在官方 bug tracker 上发现了这个问题,但也没有任何解决方案。

我还在 DigitalOcean 支持上发现了类似的问题,但没有找到解决方案。

小智 5

警告!!当您创建 MogoDB 容器时,您应该始终使用 .link 将/data/db容器内的目录链接到主机上Volumes

如果/data/db未链接到卷,您将丢失数据。

尝试使用停止容器docker stop <container>

然后使用将其完全删除docker rm <container>

docker build然后使用或docker-compose build取决于您的使用情况重新构建

注意:每当您删除容器时,它的数据都会随之删除。因此,请确保您有数据库的最新备份。