MongoDB Docker container: ERROR: Cannot write pid file to /tmp/tmp.aLmNg7ilAm: No space left on device
MongoDB Docker container: ERROR: Cannot write pid file to /tmp/tmp.aLmNg7ilAm: No space left on device
我像这样启动了一个 MongoDB 容器:
docker run -d -p 27017:27017 --net=cdt-net --name cdt-mongo mongo
我看到我的 MongoDB 容器退出了:
0e35cf68a29c mongo "docker-entrypoint.s…" Less than a second ago Exited (1) 3 seconds ago cdt-mongo
我检查了我的 Docker 日志,我看到:
$ docker logs 0e35cf68a29c
about to fork child process, waiting until server is ready for connections.
forked process: 21
2018-01-12T23:42:03.413+0000 I CONTROL [main] ***** SERVER RESTARTED *****
2018-01-12T23:42:03.417+0000 I CONTROL [main] ERROR: Cannot write pid file to /tmp/tmp.aLmNg7ilAm: No space left on device
ERROR: child process failed, exited with error number 1
有人知道这个错误是怎么回事吗?容器中 space 不够?
我不得不删除旧的 Docker 图像以释放 space,这是我使用的命令:
# remove all unused / orphaned images
echo -e "Removing unused images..."
docker rmi -f $(docker images --no-trunc | grep "<none>" | awk "{print $3}") 2>&1 | cat;
echo -e "Done removing unused images"
# clean up stuff -> using these instructions https://lebkowski.name/docker-volumes/
echo -e "Cleaning up old containers..."
docker ps --filter status=dead --filter status=exited -aq | xargs docker rm -v 2>&1 | cat;
echo -e "Cleaning up old volumes..."
docker volume ls -qf dangling=true | xargs docker volume rm 2>&1 | cat;
我们最近在将 docker-compose
与 mongo
和许多其他服务一起使用时遇到了这个问题。有两个对我们有用的修复程序。
- 清除不用的东西
# close down all services
docker-compose down
# clear unused docker images
docker system prune
# press y
- 增加 docker 可用的图像内存 - 这将取决于您安装的 docker。例如,在 Mac 上,它默认为 64Gb,我们通过 UI.
将其翻倍至 128Gb
我们在 Windows 和 Mac 中都遇到过这个问题,上面已经解决了它。
我像这样启动了一个 MongoDB 容器:
docker run -d -p 27017:27017 --net=cdt-net --name cdt-mongo mongo
我看到我的 MongoDB 容器退出了:
0e35cf68a29c mongo "docker-entrypoint.s…" Less than a second ago Exited (1) 3 seconds ago cdt-mongo
我检查了我的 Docker 日志,我看到:
$ docker logs 0e35cf68a29c
about to fork child process, waiting until server is ready for connections.
forked process: 21
2018-01-12T23:42:03.413+0000 I CONTROL [main] ***** SERVER RESTARTED *****
2018-01-12T23:42:03.417+0000 I CONTROL [main] ERROR: Cannot write pid file to /tmp/tmp.aLmNg7ilAm: No space left on device
ERROR: child process failed, exited with error number 1
有人知道这个错误是怎么回事吗?容器中 space 不够?
我不得不删除旧的 Docker 图像以释放 space,这是我使用的命令:
# remove all unused / orphaned images
echo -e "Removing unused images..."
docker rmi -f $(docker images --no-trunc | grep "<none>" | awk "{print $3}") 2>&1 | cat;
echo -e "Done removing unused images"
# clean up stuff -> using these instructions https://lebkowski.name/docker-volumes/
echo -e "Cleaning up old containers..."
docker ps --filter status=dead --filter status=exited -aq | xargs docker rm -v 2>&1 | cat;
echo -e "Cleaning up old volumes..."
docker volume ls -qf dangling=true | xargs docker volume rm 2>&1 | cat;
我们最近在将 docker-compose
与 mongo
和许多其他服务一起使用时遇到了这个问题。有两个对我们有用的修复程序。
- 清除不用的东西
# close down all services
docker-compose down
# clear unused docker images
docker system prune
# press y
- 增加 docker 可用的图像内存 - 这将取决于您安装的 docker。例如,在 Mac 上,它默认为 64Gb,我们通过 UI. 将其翻倍至 128Gb
我们在 Windows 和 Mac 中都遇到过这个问题,上面已经解决了它。