我将我的 Debian 内核从 3.x 更新到 4.x。
Docker 存储变成了overlay2。
ls /var/lib/docker/
containers image network overlay2 plugins swarm tmp trust volumes
Run Code Online (Sandbox Code Playgroud)
旧的目录结构是
aufs containers graph image init linkgraph.db network plugins repositories-aufs swarm tmp tmp-old trust volumes
Run Code Online (Sandbox Code Playgroud)
我的图像在 aufs 目录中,我无法使用旧目录启动 docker 服务。如何将我的图像移动到overlay2?
确定从 aufs 迁移到 overlayfs2 后要保存和恢复的图像。
将所有要迁移到 overlayfs 的图像导出到一个存档中 - 这更快更高效
sudo docker save $IMAGES -o /data/save.tar
这IMAGES是一个包含图像名称的变量
使用以下内容创建 /etc/docker/daemon.json:
{
"storage-driver": "overlay2"
}
Run Code Online (Sandbox Code Playgroud)
[参考 /sf/ask/2957170191/#57537190 使用 jq 更新它]
将存放docker镜像的目录备份并删除该目录
mv /var/lib/docker/images /var/lib/docker.aufs.images
systemctl daemon-reload
systemctl restart docker
docker load < save.tar
And*_*inn -1
您实际上可以设置要使用的存储驱动程序。升级可能已将默认文件或配置更改为overlay2. 您也许可以将其改回aufs. 有关此内容的文档位于https://docs.docker.com/engine/userguide/storagedriver/selectadriver/#check-and-set-your-current-storage-driver。
此外,根据您运行的 Docker 版本,该设置可能位于/etc/default/docker而不是/etc/docker/daemon.json.
| 归档时间: |
|
| 查看次数: |
4845 次 |
| 最近记录: |