我正在尝试使用 Docker 使用安装在主机上的驱动器来容器化 MongoDB 实例。
使用mongo:latest
图像:
[user@dcos-master ~]$ docker run -d --name mongo -v /local/cluster/drive:/data/db mongo:latest
但不断失败:
exception in initAndListen: 98 Unable to lock file: /data/db/mongod.lock Function not implemented. Is a mongod instance already running?, terminating
认为这是一个权限问题,所以我尝试在主机目录上打开 777 的权限,并且只是以 root 身份运行 mongod 实例,我遇到了同样的问题。
肯定没有另一个 mongod 实例正在运行并指向同一个数据目录。
最后,值得指出的是:唯一的共同点似乎是文件系统。Mongod 在 Lustre 驱动器上始终失败,但在任何其他文件系统上都没有。如果我的源目录在 NFS 驱动器或其他任何东西上,它运行得很好。