你们是用什么工具备份 docker 数据的

26 天前
 maxus
按照网上的教程,把整个 docker 目录迁移到另一个硬盘,修改相应工作路径,重新启动后,里面一个容器都没有。
不知道什么原因
2994 次点击
所在节点    NAS
24 条回复
daisyfloor
26 天前
所有数据都在 docker-compose.yml 文件所在目录 project 及其子目录里。

自动定期备份 project 目录即可。

yml 配置文件里所有容器的数据和配置目录映射都采用相对路径,映射到 project 里对应 service 的子目录里。(不适用卷)

如果当前机器遇到问题。或者换机器,换盘。只需要把备份的 project 目录解压过去,然后 docker compose up -d

即可。
neroxps
26 天前
@daisyfloor volume 还是得处理下,有些容器不小心没加上 volume 就 GG
liununu
26 天前
之前 star 过一个工具 https://github.com/offen/docker-volume-backup ,但还没试过
shelken
26 天前
restic
chinni
25 天前
@shelken 我也用这个 但是 rustic .功能更多
chenjia404
25 天前
所有容器用 docker compose 启动,数据挂载子目录,迁移的时候直接打包移动,新环境直接 up 就行了。
Hopetree
25 天前
我的容器项目都是 docker-compose.yml 定义的,把需要备份的映射到本地,比如数据库和静态文件,备份的话首先是本地备份,然后定时任务把静态文件和数据库导出上传到七牛云做成云备份(定时上传,定时清理,只保留 7 天的)
hefish
25 天前
docker-compose 是正解。
docker 的设计是无状态的,可以随时的创建和注销。所以 docker 不存在需要备份的数据。 有了 docker-compose , 就能随时创建注销容器。
Jianrry
25 天前
docker compose + reclone + onedrive/telegarm
Jianrry
25 天前
reclone => rclone
shelken
25 天前
@chinni 谢谢,看起来好像有声明式配置。在定时备份方面支持怎么样?能兼容原先的 restic repo 吗?
maxus
25 天前
daisyfloor
25 天前
@chenjia404 我和你的方法一模一样
daisyfloor
25 天前
@neroxps 从最开始部分容器服务的时候,就在 yml 配置文件里把卷改为相对路径子目录映射。也就是第一次添加某个 service 的时候,只处理一次。以后都不用处理了。
maxus
25 天前
@daisyfloor 有教程吗
laminux29
25 天前
@maxus
1.不用 Duplicati 是因为有 ZFS:实时压缩、实时去重、HDD + SSD 的性价比分层存储、带校验的 raid 。

2.docker 的用法不同,备份方式自然就不同。一般情况下,后端有 ZFS 自动去重,docker 的备份就变成了运维的几行脚本的事情,只不过要接入监控,有点麻烦而已。
maxus
25 天前
@laminux29
那我用 docker 部署 Duplicati
chenjia404
25 天前
@maxus #15


services:
kiwix-serve:
command: '"*.zim"'
image: ghcr.io/kiwix/kiwix-serve
ports:
- '15080:8080'
volumes:
- './kiwix-database:/data'
container_name: kiwix

挂载到 yml 文件子目录下面的 ./kiwix-database
daisyfloor
24 天前
@maxus 你搜搜 docker compose 吧。
tsvico
24 天前
Duplicati 有个不理想的点,Duplicati 备份的文件只能由 Duplicati 恢复,也就是新环境必须先安装 Duplicati

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1067554

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX