我的NAS网

Good Luck To You!

Docker部署MyDrive同步我重要的数据


之前,一直使用阿里云盘、一刻相册、QQ空间等存储照片,但是总感觉有一天会因为平台调整而被限制。

所以入手N100小主机后,就成为了我日常数据备份的主力军,所有的照片都转存到了小主机里,并且搭配MT相册、内网穿透,用起来很舒服,但是本地数据怎么和云盘数据同步成了一个问题,找了很久,终于找到一个非常不错的同步工具,可以把本地数据同步到云盘,无需人工干预。

MyDrive

官网:https://github.com/trueai-org/MDriveSync

多平台、模块化、安全的云盘同步工具备份,支持百度网盘、阿里云盘、多账号等,集成 Duplicati、Kopia 等多种模块,支持加密还原等,支持单向、镜像、双向等同步备份,完全免费开源。

提供 Docker 版、Duplicati 版、Kopia 版、Windows 服务版、Windows 版、手机版、网页版、Linux版、Mac 版等多平台版本。

支持多种算法同步与备份,保证数据的安全性,任何第三方、任何云盘服务商都无法查看或分析你的数据,只有通过你本人设置的安全密钥才能解密数据,保证您的数据安全和隐私。

特性

  • 不限速,阿里云盘官方接口支持,上传下载均不限速。

  • 挂载云盘支持,支持将云盘挂载到本地,作为本地硬盘使用。

  • 多线程支持,多线程上传、下载、同步,充分利用带宽。

  • 定时作业,定时同步、还原、备份等。

  • 在线云盘文件管理。

  • 免费

  • 开源

  • 跨平台,支持 Windows、Linux、Unix、Mac、Android、Docker 等平台。

  • 快速校验,多种算法支持 sha1、sha256、md5

  • 安全,加密

  • 多账号支持,多阿里云盘账号支持

  • 多作业计划支持,可以配置多个同步时间点。

  • 多种同步方式:镜像、备份、双向

  • 极速,采用安全极速的差异算法,极速实现单向或双向同步。

  • 支持秒传

  • 支持过滤本地文件/文件夹,丰富的校验规则。

  • 高性能,采用 .NET8 最新技术,极致的性能体现,低内存、高性能、跨平台。

  • WebUI 可视化配置

  • WebUI 前后端分离,保证了后台服务的高可用。

  • 支持只读模式,只读模式启动服务,则不可以编辑配置。

  • 支持自定义端口。

  • 支持回收站功能,支持删除文件/夹到回收站。

  • WebUI 支持多主题,支持黑色模式。

  • 支持云盘管理和在线下载文件。

  • 支持作业暂停、恢复、禁用、取消、删除等。

  • 支持队列,保证作业的高可用,避免多任务卡顿以及抢占资源问题。

  • 支持登录验证,下载验证。

  • 支持从配置文件中启动作业。

  • 支持超时自动锁定管理后台(BETA)。

  • 支持在线上传(BETA)。

  • 多模块支持,支持 Duplicati、Kopia 模块,直接进行加密(BETA)。

  • 支持还原云盘文件(BETA)。

  • 支持将云盘挂载到本地,像管理本地文件一样管理远程文件(BETA)。

  • 支持将备份目录挂载到本地(BETA)。

  • 支持快照,支持快照挂载(BETA)。

安装与使用

预览

http://43.129.20.214:18080

账号:admin,密码:123456

安装

我的系统:Ubuntu

安装了1Panel运维面板

所以使用Docker版部署

https://hub.docker.com/r/trueaiorg/m-drive-sync-client

一开始我根据作者提供的示例进行部署,配置了appsettings.json、appsettings.Client.json、日志映射等,但是没有效果,而且数据没有持久化,后来咨询了作者,原来系统更新了,给出的回复是:

appsettings.json 主要配置默认授权、日志等,如果使用 docker,可以不用配置。

appsettings.Client.json 是用于首次初始化的默认启动配置(可能存在 bug),现在系统更新了,默认使用数据库存储了,数据库默认存在当前目录的 db 目录下,因此,如果需要持久化,建议启动实例如下:

docker run --name mdrive -d --restart=always \
 -v /home/mdrive/db:/app/db:rw \
 -e BASIC_AUTH_USER=admin -e BASIC_AUTH_PASSWORD=123456 \
 -e READ_ONLY=true \
 -p 18080:8080 trueaiorg/m-drive-sync-client

最终我的启动代码是:

docker run --name mdrive -d --restart=always \
 -v /home/mdrive/db:/app/db:rw \
 -e BASIC_AUTH_USER=admin -e BASIC_AUTH_PASSWORD=123456 \
 -e /data:/data:ro \
 -p 18080:8080 trueaiorg/m-drive-sync-client

/home/mdrive/db要有读写权限

为什么把READ_ONLY=true去掉,因为加上之后是只读模式,在web界面不能设置事务。

/data:/data:ro 是把要备份的路径映射到程序里,否则你在web界面选择文件路径时,看不到你要备份的路径。

访问

部署完成后,通过IP:端口访问web界面,输入在部署时设置的账号和密码就可以看到如下界面。

image.png我已经配置了两个作业。

创建作业

点击存储和左右右侧的+号,弹出阿里云盘授权窗口,点击扫码授权会弹出小窗,用阿里云APP扫码并授权后,小窗会显示很长一串字符,等到几秒后小窗会自动关闭,授权窗口自动填充字符串,点保存就可以了。

image-mebz.png

后边就是作业配置,非常简单,这里就不再赘述了。

image-hnbb.png


控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言