docker - 使用Docker for Windows备份,还原或迁移数据卷

标签 docker backup docker-for-windows docker-volume

我正在尝试备份mysql docker容器卷的数据。
我找到了this post,但是对我来说还行不通。我使用git bash,因此可以使用Unix工具。

问题是,我无法访问Docker VM(磁盘镜像位置为C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks\DockerDesktop.vhdx)上的卷数据。

我试过了

docker run --rm --volumes-from mysql_1 -v /$(pwd):/backup busybox tar cvf ./backup/backup_sql.tar /var/lib/docker/volumes/<some hash>/_data`. 

错误退出
tar: C:/Program Files/Git/var/lib/docker/volumes/<some hash>/_data: No such file or directory
tar: error exit delayed from previous errors
/var/lib/docker/volumes/<some hash>/_data是命令docker inspect mysql_1给出的已安装卷的源。

空的tar文件./backup_sql.tar已创建。

有没有人成功使用Windows的docker进行docker卷的备份和还原并愿意共享?

最佳答案

对于此命令,请将cmd与以下命令配合使用:

docker run --rm --volumes-from mysql_1 -v %cd%:/backup busybox tar cvf ./backup/backup_sql.tar /var/lib/docker/volumes/<some hash>/_data`. 

关于docker - 使用Docker for Windows备份,还原或迁移数据卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59357217/

相关文章:

docker - 是否可以在多阶段 dockerfile 中跳过 FROM 命令?

mysqldump 要求输入密码,即使在命令行/配置文件中给出

php - 谁有好的 PHP 脚本可以作为 cronjob 运行来备份 MySQL 数据库?

mysql - 由于 mysql 进程未正确停止,无法启动 docker。 Mysql 正在某处运行

azure - 如何向 Azure 服务应用程序上运行的 docker 添加其他选项

docker - 使用多个主机在 Windows 10 上运行 docker swarm 模式

适用于 Windows 的 Docker 和 docker-maven-plugin - "SSLException: Unrecognized SSL message, plaintext connection"错误

windows - 拨号 tcp 查找 : no such host issue on docker windows desktop

docker - 如何使用 gpg key 解密 docker 容器中的文件而不将其保存在镜像中?

Ruby 备份 gem - 共享配置?