
Linux作業系統:debian11一切正常,但我想今天在sudo apt升級之後我安裝了新版本的docker。然後docker守護程式沒有啟動:
$ sudo systemctl start docker
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
我檢查了日誌:
今天的開始就到這裡
$ sudo journalctl -xu docker.service
May 27 09:07:11 debian systemd[1]: Started Docker Application Container Engine.
░░ Subject: A start job for unit docker.service has finished successfully
░░ Defined-By: systemd
░░ Support: https://www.debian.org/support
░░
░░ A start job for unit docker.service has finished successfully.
░░
然後我運行 apt update && apt Upgrade 並且 docker 不再運行,存在圖形指令與配置不匹配的問題..:(
$ sudo journalctl -xu docker.service
May 27 09:20:43 debian dockerd[12661]: unable to configure the Docker daemon with file /etc/docker/daemon.json: the following directives don't match any configuration option: graph
May 27 09:20:43 debian systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
這就是我的 daemon.json 的樣子
$ cat /etc/docker/daemon.json
{
"graph": "/data/docker/docker-data/"
}
Docker版本
$ docker --version
Docker version 24.0.2, build cb74dfc
我嘗試刪除 docker 並重新安裝,但沒有成功。
我接受答案並將解決方案放在這裡
$ cat /etc/docker/daemon.json
{
"data-root" : "/data/docker/docker-data/"
}
答案1
graph
是不再支持。
dockerd 或 docker daemon 命令的 -g 或 --graph 標誌用於指示儲存持久性資料和資源配置的目錄,並已替換為更具描述性的 --data-root 標誌。這些標誌在 v17.05 中已棄用並隱藏,並在 v23.0 中刪除。
您正在運行 v24。