本帖最后由 涨涨涨 于 2024-10-9 15:20 编辑
一、问题原因
因为 fnos 的 docker 存储位置在 /vol1/docker,而 docker 升级或者重新安装后默认目录指向了 /var/lib/docker 目录,所以需要更改 docker 的存储位置。
二、解决
首先说一下小坑,如果升级 docker 后,并且在 /var/lib/docker下安装使用了镜像,该目录下的镜像和容器似乎无法迁移,迁移到 /vol1/docker后,更换存储路径会无法启动 dokcer 服务。 建议在更换存储路径前,备份好数据目录的数据和docker-compose文件,便于快速恢复容器。 (一) 查看默认存储路径
- sudo docker info | grep Root\ Dir
复制代码输出 Docker Root Dir: /var/lib/docker
(二) 停止 docker 服务
(三) 备份默认存储目录(便于后期更换回默认路径)
- sudo mv /var/lib/docker /var/lib/docker.bak
复制代码
(四) 更改存储路径
- vim /etc/docker/daemon.json
复制代码增加 data-root/graph字段 - { "data-root/graph": "/vol1/docker"}
复制代码
(五) 启动 docker 服务
- sudo service docker start
复制代码如果无法启动,需要删除 or 迁移原有的 /vol1/docker目录下的内容,然后重新启动
(六) 验证docker 服务目录已更改
- sudo docker info | grep Root\ Dir
复制代码输出 Docker Root Dir: /vol1/docker
三、1panel 已安装应用重启
docker 存储路径更换后,可能会导致 1panel docker 网络的 1panel-network丢失,需要手动重新创建改网路名称
(一) 恢复1panel-network
在 1panel 运维面板中 容器-网络-创建网络 网络名-1panel-network 模式-bridge 子网-172.x.0.0/16 (不要和其他网络的子网重复即可) 网关-172.x.0.1 (x与子网x 取同值)
eg. 子网-172.20.0.0/16 网关-172.20.0.1
(二) 重新构建应用
1panel 运维面板-应用商店-已安装应用,对启动失败的应用点击 重建 按钮即可
|