Docker 未使用 /etc/docker/daemon 中的配置

问题描述 投票:0回答:1

我机器上的 docker 服务器当前使用 /var/lib/docker 作为根目录,我正在尝试将其更改为我的主分区上的某个目录。

我停止了 docker.service,按照 wiki 的说明在位于 /etc/docker/daemon.json 的文件中配置了 data-root,将当前根目录中存储的数据复制到新目录,然后重新启动 docker.service 。之后,运行“docker info”仍然将原始目录显示为 doot dir。

/etc/docker/daemon.json 文件如下所示:

{ "data-root": "/home/(用户名)/.docker-root/docker" }

由于新目录位于用户而不是专用分区中,是否存在权限问题?

docker archlinux
1个回答
0
投票

如果 /etc/docker/daemon.json 位置正确,并且 /etc/docker/daemon.json 中的所有规范均正确写入,

为什么不检查docker服务日志和服务文件呢?

  1. 检查日志
sudo journalctl -u docker.service

sudo journalctl -u docker.service | grep -i "error"
sudo journalctl -u docker.service | grep -i "warning"

从错误日志中获取一些提示(可能有一些关于您的守护进程设置的日志)

  1. 检查 systmed/docker.service
sudo nano(vim,cat) /usr/lib/systemd/system/docker.service

在 docker 服务文件中,检查是否有任何选项覆盖“data-root”设置

[Service]
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

还可以使用

daemon-reload
将更改应用到 docker 服务

sudo systemctl daemon-reload
sudo systemctl restart docker

© www.soinside.com 2019 - 2024. All rights reserved.