Docker:Mongo 在运行时退出

nin*_*eer 5 mongodb docker boot2docker

使用:

https://registry.hub.docker.com/_/mongo/
Run Code Online (Sandbox Code Playgroud)

我这样做是为了拉入所有标签:

docker pull mongo
Run Code Online (Sandbox Code Playgroud)

然后,当我尝试运行它时

docker run -v /data:/data --name mongodb -p 4000:27017 mongo:2.6.6
Run Code Online (Sandbox Code Playgroud)

状态显示

CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS                     PORTS                    NAMES
5959d3f79243        mongo:2.6.6         "/entrypoint.sh mong   4 seconds ago       Exited (1) 3 seconds ago                            mongodb 
Run Code Online (Sandbox Code Playgroud)

日志显示:

numactl: This system does not support NUMA policy
Run Code Online (Sandbox Code Playgroud)

如何在使用 docker 时保持 mongo 运行?我在 OSX (boot2docker) 上使用 Docker 1.4.1。

ice*_*ime 4

确实,boot2docker VM不支持NUMA,当前的Dockerfile通过numactl. 一个可能的解决方法:

$ docker run -v /data:/data --name mongodb -p 4000:27017 --entrypoint=mongod mongo:2.6.6
Run Code Online (Sandbox Code Playgroud)

这用于--entrypoint覆盖定义的图像ENTRYPOINTmongod直接执行。