Docker实时同步备份数据至阿里云盘

随着互联网的快速发展网站数据的安全性变得越来越重要,一旦网站数据丢失或被损坏将对企业个人的运营产生重大影响。因此做好网站数据的备份工作至关重要,阿里云盘作为阿里巴巴旗下的云存储服务,具有安全高效便捷等特点是备份网站数据的理想选择,但是各大 Linux Windows服务器系统并没有相关的插件功能,最近申请了阿里云盘的openapi接口就根据网上大佬的项目做了一些更改删减,就上线一个Docker容器进行备份数据

项目地址
获取Refresh Token
  • 登录阿里云盘官网https://www.alipan.com/

  • 按F12进入开发者模式选择->应用程序->Refresh Token把值粘贴在配置文件中的ALIYUNPAN_REFRESH_TOKEN选项

配置文件
  • 另存为aliyunpan-sync.yml
version: '3'
services:
  sync:
    image: tickstep/aliyunpan-sync:v0.2.7
    container_name: aliyunpan-sync
    restart: always
    volumes:
      # 指定本地备份目录绝对路径:/tickstep/Documents/设计文档
      - /volume1/docker/aliyunpan-sync/sync:/home/app/data:rw
      # (可选)可以指定JS插件sync_handler.js用于过滤文件,详见下面的插件说明
      #- /volume1/docker/aliyunpan-sync/plugin/js/sync_handler.js:/home/app/config/plugin/js/sync_handler.js
      # (推荐)挂载sync_drive同步数据库到本地,这样即使容器销毁,同步数据库还可以用于以后使用
      - /volume1/docker/aliyunpan-sync/sync_drive/:/home/app/config/sync_drive
    environment:
      - TZ=Asia/Shanghai
      # refresh token
      - ALIYUNPAN_REFRESH_TOKEN=0ae2c9beaXXXXXXXXXXXXX
      # 上传下载链接类型:1-默认 2-阿里ECS环境
      - ALIYUNPAN_TRANSFER_URL_TYPE=1
      # 下载文件并发数
      - ALIYUNPAN_DOWNLOAD_PARALLEL=2
      # 上传文件并发数
      - ALIYUNPAN_UPLOAD_PARALLEL=2
      # 下载数据块大小,单位为KB,默认为10240KB,建议范围1024KB~10240KB
      - ALIYUNPAN_DOWNLOAD_BLOCK_SIZE=1024
      # 上传数据块大小,单位为KB,默认为10240KB,建议范围1024KB~10240KB
      - ALIYUNPAN_UPLOAD_BLOCK_SIZE=10240
      # 指定网盘文件夹作为备份目录,不要指定根目录
      - ALIYUNPAN_PAN_DIR=/数据备份
      # 备份模式:upload(备份本地文件到云盘), download(备份云盘文件到本地), sync(双向同步备份)
      - ALIYUNPAN_SYNC_MODE=upload
      # 优先级,只对双向同步备份模式有效。选项支持三种: time-时间优先,local-本地优先,pan-网盘优先
      - ALIYUNPAN_SYNC_PRIORITY=local
      # 是否显示文件备份过程日志,true-显示,false-不显示
      - ALIYUNPAN_SYNC_LOG=true
      # 本地文件修改检测延迟间隔,单位秒。如果本地文件会被频繁修改,例如录制视频文件,配置好该时间可以避免上传未录制好的文件
      - ALIYUNPAN_LOCAL_DELAY_TIME=3
      # 任务步骤, 支持两种: scan(只扫描并建立同步数据库),sync(正常启动同步任务)
      - ALIYUNPAN_TASK_STEP=sync
      # 登录设备的ID,默认为空,程序会自动生成一个ID
      - ALIYUNPAN_DEVICE_ID=
创建目录
# 指定本地备份目录绝对路径:sync是指定的实时上传数据的目录
mkdir -p /volume1/docker/aliyunpan-sync/sync/
# 数据存放目录不要删除 以保证重新部署后数据还在
mkdir -p /volume1/docker/aliyunpan-sync/sync_drive/
安装部署
# 把aliyunpan-sync.yml这个文件放到当前目录执行安装命令
docker-compose -f aliyunpan-sync.yml up -d
# 推荐使用上传模式upload,实测大文件秒传没限制小文件也没问题,备份模式:upload(备份本地文件到云盘), download(备份云盘文件到本地), sync(双向同步备份)
ALIYUNPAN_SYNC_MODE=upload
总结

前段时间通过webdav协议实时备份,很多好友的账号被风控警告,

posted @ 2024-03-19 16:14  阿鱼君  阅读(94)  评论(0编辑  收藏  举报