关于Docker报错问题解决:Docker fails to start containers with cgroup memory allocation error.

docker容器报错,报错信息如下:

OCI runtime create failed: container_linux.go:346: starting container process caused "process_linux.go:297: applying cgroup configuration for process caused \"mkdir /sys/fs/cgroup/memory/docker/61f9e2e98bd162422f4fb7b94f6aab133bf5d930fad5c9dc92ac669c39319576: cannot allocate memory\"": unknown

 

[root@REDACTED]# docker run hello-world docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:279: applying cgroup configuration for process caused \"mkdir /sys/fs/cgroup/memory/docker/fe4159ed6f4ec16af63ba0c2af53ec9c6b0c0c2ac42ff96f6816d5e28a821b4e: cannot allocate memory\"": unknown. ERRO[0000] error waiting for container: context canceled

 

解决办法如下:

1.检查docker容器启动时候的内存配置;如果内存配置太低,建议修改,调整并增大内存。

2.禁用swap:

复制代码
一、不重启电脑,禁用启用swap,立刻生效
# 禁用命令 sudo swapoff
-a # 启用命令 sudo swapon -a # 查看交换分区的状态 sudo free -m
二、重新启动电脑,永久禁用Swap
# 把根目录文件系统设为可读写 sudo mount
-n -o remount,rw / # 用vi修改/etc/fstab文件,在swap分区这行前加 # 禁用掉,保存退出 vi /etc/fstab i #进入insert 插入模式 :wq #保存退出 # 重新启动电脑,使用free -m查看分区状态 reboot sudo free -m
复制代码

 

3.如果还没有解决,建议检查docker版本,或重启docker。

 4.其他解决办法:参考:https://www.cnblogs.com/yanglei-xyz/p/container_linux_go_346.html

待续

 

posted @   念槐聚  阅读(814)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示