docker启动失败 Failed to start Docker Application Container Engine

问题分析

/usr/lib/systemd/system/docker.service中
ExecStart=/usr/bin/dockerd --storage-driver=devicemapper --storage-opt=dm.thinpooldev=/dev/mapper		/docker-thinpool --storage-opt dm.use_deferred_removal=true --bip=10.96.77.1/24
加参数后docker服务起不来
ExecStart=/usr/bin/dockerd
不加参数是可以起来的
ExecStart=/usr/bin/dockerd --bip=10.96.77.1/24这样也能起来,郁闷

解决
手动在终端执行如下命令:
/usr/bin/dockerd --storage-driver=devicemapper --storage-opt=dm.thinpooldev=/dev/mapper /docker-thinpool --storage-opt dm.use_deferred_removal=true --bip=10.96.77.1/24
报错:

	Error starting daemon: error initializing graphdriver: devmapper: Base Device UUID and Filesystem verification failed: devicemapper: Can't set cookie dm_task_set_cookie failed

原因未知,可能是devicemapper direct_lvm依赖的磁盘uuid冲突,或者不一致。

方法:执行以下命令
systemctl stop docker (停止docker 服务)
dmsetup udevcomplete_all (释放未完成的磁盘操作)
sudo rm -rf /var/lib/docker/* (清空docker 数据)
reboot (注:当有镜像或容器文件删除不了时,重启服务器)
systemctl start docker (重启docker服务)

问题解决。
附加centos devicemapper direct_lvm制作方法
参考:
https://docs.docker.com/storage/storagedriver/device-mapper-driver/#configure-loop-lvm-mode-for-testing

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章