重啟docker容器報錯:
Error response from daemon: Cannot restart container f6: OCI runtime create failed: container_linux.go:346: starting container process caused "process_linux.go:319: getting the final child's pid from pipe caused \"EOF\"": unknown
谷歌搜了一圈大多數都是內核版本低導致安裝 Docker 后出現的問題。和我這里的情況明顯不同。
通過 journactl -xe 發現內核報錯:
kernel: Unable to create nf_conn slab cache
根本原因是 linux 3.10 內核的 BUG,產生的原因是因為內存碎片過多,無法分配大塊內存。
重啟服務器能直接解決,如果不能重啟可以參考最后一篇中的如下命令:
# 清理頁面緩存 echo 1 > /proc/sys/vm/drop_caches # or sysctl -w vm.drop_caches=1
我在使用上面命令后,服務就能啟動了,但是碎片仍然很嚴重,仍然存在很大的風險。
