docker守护程序不再在我的计算机上启动(Linux / Centos 7),我强烈怀疑在这种情况下设置为自动重启的容器是罪魁祸首。如果我手动启动守护进程,我看到的最后一行是#34;加载容器:启动",然后它就会挂起。
我想要做的是启动守护进程而不启动任何容器。但我找不到任何选择。在没有启动容器设置为自动重启的情况下,docker中是否有任何选项可以启动守护程序?如果没有,有没有办法手动删除不需要运行docker守护程序的容器?
答案 0 :(得分:1)
我写了这个小脚本来在docker启动之前停止所有容器。它需要安装jq
。
for i in /var/lib/docker/containers/*/config.v2.json; do
touch "$i.new" && getfacl -p "$i" | setfacl --set-file=- "$i.new"
cat "$i" | jq -c '.State.Running = false' > "$i.new" && mv -f "$i.new" "$i"
done
答案 1 :(得分:1)
我认为我们需要验证您正在使用的Docker的存储驱动程序。已知Devicemapper存在与您描述的问题类似的问题。我建议移至overlay2作为存储驱动程序。
如果您不在产品系统上运行此程序,则可以尝试执行以下步骤来查看守护进程是否正在运行,
systemctl disable docker
,然后重新启动系统