You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过PowerShell备份Docker卷后找不到生成的.tar文件如何解决

问题原因

你的操作存在路径配置错误,问题出在tar命令的输出路径参数:
你当前执行的tar cvf backup.tar /var/lib/mysql是把备份包生成在临时Ubuntu容器的当前工作目录(Ubuntu镜像默认工作目录为根目录/),你虽然挂载了本地目录到容器的/backup路径,但没有将tar的输出文件指向该挂载目录。同时你添加了--rm参数,容器运行结束后会直接销毁,存在容器内部的备份包也会同步被删除,所以你在本地找不到对应文件。

修正方案

根据你的执行环境选择对应修正后的命令即可:

  • 如果你在Windows原生终端(PowerShell/CMD)中执行Docker命令,修正后的命令为:
    docker run --rm --volumes-from wordpress_db_1 -v c:\:/backup ubuntu tar cvf /backup/backup.tar /var/lib/mysql
    
    执行完成后可以直接在C盘根目录找到backup.tar备份文件。
  • 如果你在WSL子系统终端中执行Docker命令,修正后的命令为:
    docker run --rm --volumes-from wordpress_db_1 -v /mnt/c/users/me/desktop:/backup ubuntu tar cvf /backup/backup.tar /var/lib/mysql
    
    执行完成后备份文件会出现在你的Windows桌面。

注意事项

  • 如果执行命令后仍然找不到文件,先确认当前执行Docker的终端拥有目标本地目录的读写权限,WSL环境下还要额外检查Windows目录的挂载权限配置。
  • 后续恢复备份时,只需要将tar命令的c参数替换为x,调整对应路径即可完成恢复。

内容的提问来源于stack exchange,提问作者a6man

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 11:54:03