启动容器失败

1 OCI runtime create failed container with id exists 错误

exec_root=$(ps -ef  | grep docker | awk -F "--exec-root=" '{print $2}' | awk '{print $1}' | grep docker)
rm -rf ${exec_root}/runtime-runc/moby/xxx
如:rm -rf /var/run/docker/runtime-runc/moby/xxx

线上在 /mnt/docker/exec/runtime-runc/moby 目录

批量重启容器

docker ps -a | grep Exited | awk '{print $1}' | xargs -I {} docker start {}

2 根目录磁盘满

$ docker run -d --name ceshi1 --entrypoint /bin/sh {image} -c "while true;do sleep 1;echo 'hello';done"
WARNING: IPv4 forwarding is disabled. Networking will not work.
docker: Error response from daemon: mkdir /run/containerd/io.containerd.runtime.v2.task/moby/bd48b3ac089892227132be3e014affa72c702c036c34e8df758728f441321c4e: no space left on device: unknown.
ERRO[0000] error waiting for container: context canceled

3 报 id already in use

错误提示


Error response from daemon: id already in use
Error: failed to start containers: f2906d83e981

处理方法

# 确认容器处于停止状态
docker ps -a

# 查询是否有 containerd-shim-runc-v2 进程
ps -aux | grep 容器ID

# 杀掉相关进程(一般是 containerd-shim-runc-v2 进程)
kill -9 进程

Last updated