【Docker】更改docker镜像的存储路径
1.查看Docker存储路径
docker info|grep "Docker Root Dir"
2.关闭所有运行的容器
···
docker ps | awk '{print $1}' |xargs docker stop
···
3.停止docker服务
systemctl stop docker
4.新增的磁盘挂载点上新建目录,并将原有的docker容器和镜像全部拷贝过来,比如这里新增磁盘的挂载点为 /data/,则参照如下命令操作
mkdir -p /data/var/lib/docker/
cd /data/var/lib/docker/
cp -R /var/lib/docker/* /data/var/lib/docker/
#这段配置看下述补充,只适合做软链接迁移了
mv /var/lib/docker /var/lib/docker-bak
ln -s /data/var/lib/docker /var/lib/docker
------------------------------------------------------------------
#补充,这里出现了一个cp -R 文件复制递归问题,只能递归/var/lib/docker 的docker子目录的权限,导致在配置文件daemon.json 修改了路径启动一直报错(一般递归地复制目录和子目录,并且保留源文件的所有权限信息,包括所有者、所属组、文件权限以及时间戳等)
#建议修改为以下路径
mkdir -p /data/docker/
cd /data/docker/
cp -R /var/lib/docker/* /data/docker/
5.设置docker的配置文件,并指定存储路径,如果文件不存在则直接创建一个
vi /etc/docker/daemon.json
{
"data-root": "/data/docker",
"registry-mirrors": ["https://ooe7wn09.mirror.aliyuncs.com"]
}
6.重启docker服务
systemctl daemon-reload
systemctl start docker
完成docker容器和镜像默认路径的修改
本文作者:肥羊杀手
本文链接:https://www.cnblogs.com/FatSheepKiller/p/17884682.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
分类:
Linux随笔 / Docker
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步