windows环境下docker数据迁移到其他盘

docker安装在C盘,使用一段时间后,C盘爆满。因此想把C盘中的数据迁移到其他盘,以释放C盘空间。分为以下步骤:

1、启动docker软件,打开PowerShell并切换到Docker Compose配置文件的目录。

Docker Compose配置文件的目录通常位于你的项目根目录中,也就是包含你的应用程序代码和其他相关文件的目录。在这个目录下,你可以创建一个名为 docker-compose.yml 或 docker-compose.yaml 的文件,来定义 Docker 容器和服务的配置。如果你不确定当前所在的目录是否是项目根目录,可以使用以下命令来验证:

bash 复制代码
dir | findstr docker-compose.yml

如果不打开,执行下面的命令时会出现错误:

2、停止Docker服务:在命令提示符或PowerShell中执行以下命令来停止Docker服务:

bash 复制代码
docker-compose down

注意,这个命令只针对使用 Docker Compose 管理的服务,其他在 Docker 中运行的容器不受影响。因此还需要手动关闭

docker-compose down命令执行后,关闭前 查看 其他在 Docker 中运行的容器

bash 复制代码
docker ps

关闭后再查看

3、迁移Docker数据目录:将Docker的默认数据目录从C盘迁移到其他磁盘。这个目录通常位于C:\Users\PC\AppData\Local\Docker。你可以将该目录剪切到新位置,并确保你有足够的权限访问新位置。

4、创建软链接(符号链接):打开命令提示符,并以管理员身份运行以下命令,将原来的Docker数据目录链接到新位置:

bash 复制代码
mklink /J "C:\Users\PC\AppData\Local\Docker" F:\Docker

将 F:\Docker 替换为实际的新数据目录路径。

如果使用PowerShell运行上面的命令会出现如下错误:

这个错误表明你在运行 mklink 命令时出现了问题,因为 PowerShell 无法识别 mklink 命令。mklink 是一个 Windows 命令提示符(cmd)命令,并不是 PowerShell 的内置命令。

5、打开同时启动Docker服务:打开命令提示符或PowerShell,进入Docker Compose配置文件的目录中,执行以下命令来启动Docker服务:

bash 复制代码
 docker-compose up -d

如果不 打开 ,启动Docker服务时会报错:

此时,Docker将会使用新的数据目录来存储镜像、容器和其他相关数据,从而释放了Windows C盘空间。此时C盘Docker文件夹如下:

查看docker安装的镜像:

bash 复制代码
docker image ls

或

cpp 复制代码
docker images
相关推荐
cpolar技术支持12 分钟前
外网测试机的异常传不回内网?自托管 Sentry,用 cpolar 打通错误上报链路
python·nginx·docker·cpolar·sentry
MrSYJ3 小时前
别人再问你路由表是啥,这篇文章摔它脸上
docker·云原生·kubernetes
羑悻4 小时前
穿越Docker内核迷雾:揭秘镜像分层存储的叠加态与卷挂载的多维空间穿梭技术
后端·docker·容器
筑梦之路5 小时前
docker-compose方式部署kafka集群(Kraft方式)——筑梦之路
docker·容器·kafka
JavaPub-rodert5 小时前
Docker 镜像地址总失效?基于 DockerHub 项目用 GitHub Actions 做一个自动检测状态页
docker·容器·github
天衍四九-6 小时前
Docker 进阶实战系列(一):容器镜像安全,最小镜像与非 Root 运行
安全·docker·eureka
天衍四九-6 小时前
Docker进阶实战系列(二):容器日志深度治理|驱动配置、自动切割、磁盘爆满彻底解决
docker·容器·eureka
sbjdhjd6 小时前
云安全 | Docker 容器逃逸复盘(一):从隔离边界到运行时链路,如何确认自己身处容器
网络安全·docker·云原生·容器·kubernetes·云计算·云安全
溪语流沙6 小时前
【Web全栈进阶】PostgreSQL上手:Docker跑库 + 把早报站从SQLite迁过去
前端·docker·postgresql
梦想不只是梦与想16 小时前
docker-compose.yml
docker·docker-compose·docker run