我在生产环境中有 3 个正在运行的容器。我必须将存储策略移动到 overlay2。我提交了我的容器,并将这些提交的图像保存为
tar
文件。
现在我准备删除所有旧的 docker 东西,然后我将更改存储策略。
这个关键操作有人做过吗?在安全区有什么建议吗?
注意: 由于图层,您将无法访问所有当前图像和容器!还原您的更改将使您的旧图像和容器再次可访问。您可以使用
docker save IMAGE:TAG > IMAGE.tar.gz
保存当前图像,并使用 docker load < IMAGE.tar.gz
将它们导入新的存储驱动程序。
遵循以下步骤:
停止码头工人:
sudo systemctl stop docker
编辑文件/etc/docker/daemon.json(如果不存在则创建它)并在文件中添加以下内容:
{
"storage-driver": "overlay2"
}
启动泊坞窗:
sudo systemctl start docker
使用 docker info 来验证正在使用存储驱动程序:
$ docker info
...
Storage Driver: overlay2
...
我不清楚提供给容器的体积是否会受到此更改的影响。我第一次尝试实现它是这样的:
无法启动守护进程:初始化 graphdriver 时出错:overlay2:后备 xfs 文件系统在没有 d_type 支持的情况下被格式化,这会导致不正确的行为。使用 ftype=1 重新格式化文件系统以启用 d_type 支持。
就我而言,这是我的根文件系统;我需要创建一个新的文件系统并将其挂载在 /var/lib/docker 上。